<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="generator" content="Asciidoctor 2.0.17">
<meta name="author" content="Tristano Ajmone">
<title>Awesome Interactive Fiction</title>
<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Open+Sans:300,300italic,400,400italic,600,600italic%7CNoto+Serif:400,400italic,700,700italic%7CDroid+Sans+Mono:400,700">
<style>
/*! Asciidoctor default stylesheet | MIT License | https://asciidoctor.org */
/* Uncomment the following line when using as a custom stylesheet */
/* @import "https://fonts.googleapis.com/css?family=Open+Sans:300,300italic,400,400italic,600,600italic%7CNoto+Serif:400,400italic,700,700italic%7CDroid+Sans+Mono:400,700"; */
html{font-family:sans-serif;-webkit-text-size-adjust:100%}
a{background:none}
a:focus{outline:thin dotted}
a:active,a:hover{outline:0}
h1{font-size:2em;margin:.67em 0}
b,strong{font-weight:bold}
abbr{font-size:.9em}
abbr[title]{cursor:help;border-bottom:1px dotted #dddddf;text-decoration:none}
dfn{font-style:italic}
hr{height:0}
mark{background:#ff0;color:#000}
code,kbd,pre,samp{font-family:monospace;font-size:1em}
pre{white-space:pre-wrap}
q{quotes:"\201C" "\201D" "\2018" "\2019"}
small{font-size:80%}
sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}
sup{top:-.5em}
sub{bottom:-.25em}
img{border:0}
svg:not(:root){overflow:hidden}
figure{margin:0}
audio,video{display:inline-block}
audio:not([controls]){display:none;height:0}
fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}
legend{border:0;padding:0}
button,input,select,textarea{font-family:inherit;font-size:100%;margin:0}
button,input{line-height:normal}
button,select{text-transform:none}
button,html input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer}
button[disabled],html input[disabled]{cursor:default}
input[type=checkbox],input[type=radio]{padding:0}
button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}
textarea{overflow:auto;vertical-align:top}
table{border-collapse:collapse;border-spacing:0}
*,::before,::after{box-sizing:border-box}
html,body{font-size:100%}
body{background:#fff;color:rgba(0,0,0,.8);padding:0;margin:0;font-family:"Noto Serif","DejaVu Serif",serif;line-height:1;position:relative;cursor:auto;-moz-tab-size:4;-o-tab-size:4;tab-size:4;word-wrap:anywhere;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased}
a:hover{cursor:pointer}
img,object,embed{max-width:100%;height:auto}
object,embed{height:100%}
img{-ms-interpolation-mode:bicubic}
.left{float:left!important}
.right{float:right!important}
.text-left{text-align:left!important}
.text-right{text-align:right!important}
.text-center{text-align:center!important}
.text-justify{text-align:justify!important}
.hide{display:none}
img,object,svg{display:inline-block;vertical-align:middle}
textarea{height:auto;min-height:50px}
select{width:100%}
.subheader,.admonitionblock td.content>.title,.audioblock>.title,.exampleblock>.title,.imageblock>.title,.listingblock>.title,.literalblock>.title,.stemblock>.title,.openblock>.title,.paragraph>.title,.quoteblock>.title,table.tableblock>.title,.verseblock>.title,.videoblock>.title,.dlist>.title,.olist>.title,.ulist>.title,.qlist>.title,.hdlist>.title{line-height:1.45;color:#7a2518;font-weight:400;margin-top:0;margin-bottom:.25em}
div,dl,dt,dd,ul,ol,li,h1,h2,h3,#toctitle,.sidebarblock>.content>.title,h4,h5,h6,pre,form,p,blockquote,th,td{margin:0;padding:0}
a{color:#2156a5;text-decoration:underline;line-height:inherit}
a:hover,a:focus{color:#1d4b8f}
a img{border:0}
p{line-height:1.6;margin-bottom:1.25em;text-rendering:optimizeLegibility}
p aside{font-size:.875em;line-height:1.35;font-style:italic}
h1,h2,h3,#toctitle,.sidebarblock>.content>.title,h4,h5,h6{font-family:"Open Sans","DejaVu Sans",sans-serif;font-weight:300;font-style:normal;color:#ba3925;text-rendering:optimizeLegibility;margin-top:1em;margin-bottom:.5em;line-height:1.0125em}
h1 small,h2 small,h3 small,#toctitle small,.sidebarblock>.content>.title small,h4 small,h5 small,h6 small{font-size:60%;color:#e99b8f;line-height:0}
h1{font-size:2.125em}
h2{font-size:1.6875em}
h3,#toctitle,.sidebarblock>.content>.title{font-size:1.375em}
h4,h5{font-size:1.125em}
h6{font-size:1em}
hr{border:solid #dddddf;border-width:1px 0 0;clear:both;margin:1.25em 0 1.1875em}
em,i{font-style:italic;line-height:inherit}
strong,b{font-weight:bold;line-height:inherit}
small{font-size:60%;line-height:inherit}
code{font-family:"Droid Sans Mono","DejaVu Sans Mono",monospace;font-weight:400;color:rgba(0,0,0,.9)}
ul,ol,dl{line-height:1.6;margin-bottom:1.25em;list-style-position:outside;font-family:inherit}
ul,ol{margin-left:1.5em}
ul li ul,ul li ol{margin-left:1.25em;margin-bottom:0}
ul.square li ul,ul.circle li ul,ul.disc li ul{list-style:inherit}
ul.square{list-style-type:square}
ul.circle{list-style-type:circle}
ul.disc{list-style-type:disc}
ol li ul,ol li ol{margin-left:1.25em;margin-bottom:0}
dl dt{margin-bottom:.3125em;font-weight:bold}
dl dd{margin-bottom:1.25em}
blockquote{margin:0 0 1.25em;padding:.5625em 1.25em 0 1.1875em;border-left:1px solid #ddd}
blockquote,blockquote p{line-height:1.6;color:rgba(0,0,0,.85)}
@media screen and (min-width:768px){h1,h2,h3,#toctitle,.sidebarblock>.content>.title,h4,h5,h6{line-height:1.2}
h1{font-size:2.75em}
h2{font-size:2.3125em}
h3,#toctitle,.sidebarblock>.content>.title{font-size:1.6875em}
h4{font-size:1.4375em}}
table{background:#fff;margin-bottom:1.25em;border:1px solid #dedede;word-wrap:normal}
table thead,table tfoot{background:#f7f8f7}
table thead tr th,table thead tr td,table tfoot tr th,table tfoot tr td{padding:.5em .625em .625em;font-size:inherit;color:rgba(0,0,0,.8);text-align:left}
table tr th,table tr td{padding:.5625em .625em;font-size:inherit;color:rgba(0,0,0,.8)}
table tr.even,table tr.alt{background:#f8f8f7}
table thead tr th,table tfoot tr th,table tbody tr td,table tr td,table tfoot tr td{line-height:1.6}
h1,h2,h3,#toctitle,.sidebarblock>.content>.title,h4,h5,h6{line-height:1.2;word-spacing:-.05em}
h1 strong,h2 strong,h3 strong,#toctitle strong,.sidebarblock>.content>.title strong,h4 strong,h5 strong,h6 strong{font-weight:400}
.center{margin-left:auto;margin-right:auto}
.stretch{width:100%}
.clearfix::before,.clearfix::after,.float-group::before,.float-group::after{content:" ";display:table}
.clearfix::after,.float-group::after{clear:both}
:not(pre).nobreak{word-wrap:normal}
:not(pre).nowrap{white-space:nowrap}
:not(pre).pre-wrap{white-space:pre-wrap}
:not(pre):not([class^=L])>code{font-size:.9375em;font-style:normal!important;letter-spacing:0;padding:.1em .5ex;word-spacing:-.15em;background:#f7f7f8;border-radius:4px;line-height:1.45;text-rendering:optimizeSpeed}
pre{color:rgba(0,0,0,.9);font-family:"Droid Sans Mono","DejaVu Sans Mono",monospace;line-height:1.45;text-rendering:optimizeSpeed}
pre code,pre pre{color:inherit;font-size:inherit;line-height:inherit}
pre>code{display:block}
pre.nowrap,pre.nowrap pre{white-space:pre;word-wrap:normal}
em em{font-style:normal}
strong strong{font-weight:400}
.keyseq{color:rgba(51,51,51,.8)}
kbd{font-family:"Droid Sans Mono","DejaVu Sans Mono",monospace;display:inline-block;color:rgba(0,0,0,.8);font-size:.65em;line-height:1.45;background:#f7f7f7;border:1px solid #ccc;border-radius:3px;box-shadow:0 1px 0 rgba(0,0,0,.2),inset 0 0 0 .1em #fff;margin:0 .15em;padding:.2em .5em;vertical-align:middle;position:relative;top:-.1em;white-space:nowrap}
.keyseq kbd:first-child{margin-left:0}
.keyseq kbd:last-child{margin-right:0}
.menuseq,.menuref{color:#000}
.menuseq b:not(.caret),.menuref{font-weight:inherit}
.menuseq{word-spacing:-.02em}
.menuseq b.caret{font-size:1.25em;line-height:.8}
.menuseq i.caret{font-weight:bold;text-align:center;width:.45em}
b.button::before,b.button::after{position:relative;top:-1px;font-weight:400}
b.button::before{content:"[";padding:0 3px 0 2px}
b.button::after{content:"]";padding:0 2px 0 3px}
p a>code:hover{color:rgba(0,0,0,.9)}
#header,#content,#footnotes,#footer{width:100%;margin:0 auto;max-width:62.5em;*zoom:1;position:relative;padding-left:.9375em;padding-right:.9375em}
#header::before,#header::after,#content::before,#content::after,#footnotes::before,#footnotes::after,#footer::before,#footer::after{content:" ";display:table}
#header::after,#content::after,#footnotes::after,#footer::after{clear:both}
#content{margin-top:1.25em}
#content::before{content:none}
#header>h1:first-child{color:rgba(0,0,0,.85);margin-top:2.25rem;margin-bottom:0}
#header>h1:first-child+#toc{margin-top:8px;border-top:1px solid #dddddf}
#header>h1:only-child,body.toc2 #header>h1:nth-last-child(2){border-bottom:1px solid #dddddf;padding-bottom:8px}
#header .details{border-bottom:1px solid #dddddf;line-height:1.45;padding-top:.25em;padding-bottom:.25em;padding-left:.25em;color:rgba(0,0,0,.6);display:flex;flex-flow:row wrap}
#header .details span:first-child{margin-left:-.125em}
#header .details span.email a{color:rgba(0,0,0,.85)}
#header .details br{display:none}
#header .details br+span::before{content:"\00a0\2013\00a0"}
#header .details br+span.author::before{content:"\00a0\22c5\00a0";color:rgba(0,0,0,.85)}
#header .details br+span#revremark::before{content:"\00a0|\00a0"}
#header #revnumber{text-transform:capitalize}
#header #revnumber::after{content:"\00a0"}
#content>h1:first-child:not([class]){color:rgba(0,0,0,.85);border-bottom:1px solid #dddddf;padding-bottom:8px;margin-top:0;padding-top:1rem;margin-bottom:1.25rem}
#toc{border-bottom:1px solid #e7e7e9;padding-bottom:.5em}
#toc>ul{margin-left:.125em}
#toc ul.sectlevel0>li>a{font-style:italic}
#toc ul.sectlevel0 ul.sectlevel1{margin:.5em 0}
#toc ul{font-family:"Open Sans","DejaVu Sans",sans-serif;list-style-type:none}
#toc li{line-height:1.3334;margin-top:.3334em}
#toc a{text-decoration:none}
#toc a:active{text-decoration:underline}
#toctitle{color:#7a2518;font-size:1.2em}
@media screen and (min-width:768px){#toctitle{font-size:1.375em}
body.toc2{padding-left:15em;padding-right:0}
#toc.toc2{margin-top:0!important;background:#f8f8f7;position:fixed;width:15em;left:0;top:0;border-right:1px solid #e7e7e9;border-top-width:0!important;border-bottom-width:0!important;z-index:1000;padding:1.25em 1em;height:100%;overflow:auto}
#toc.toc2 #toctitle{margin-top:0;margin-bottom:.8rem;font-size:1.2em}
#toc.toc2>ul{font-size:.9em;margin-bottom:0}
#toc.toc2 ul ul{margin-left:0;padding-left:1em}
#toc.toc2 ul.sectlevel0 ul.sectlevel1{padding-left:0;margin-top:.5em;margin-bottom:.5em}
body.toc2.toc-right{padding-left:0;padding-right:15em}
body.toc2.toc-right #toc.toc2{border-right-width:0;border-left:1px solid #e7e7e9;left:auto;right:0}}
@media screen and (min-width:1280px){body.toc2{padding-left:20em;padding-right:0}
#toc.toc2{width:20em}
#toc.toc2 #toctitle{font-size:1.375em}
#toc.toc2>ul{font-size:.95em}
#toc.toc2 ul ul{padding-left:1.25em}
body.toc2.toc-right{padding-left:0;padding-right:20em}}
#content #toc{border:1px solid #e0e0dc;margin-bottom:1.25em;padding:1.25em;background:#f8f8f7;border-radius:4px}
#content #toc>:first-child{margin-top:0}
#content #toc>:last-child{margin-bottom:0}
#footer{max-width:none;background:rgba(0,0,0,.8);padding:1.25em}
#footer-text{color:hsla(0,0%,100%,.8);line-height:1.44}
#content{margin-bottom:.625em}
.sect1{padding-bottom:.625em}
@media screen and (min-width:768px){#content{margin-bottom:1.25em}
.sect1{padding-bottom:1.25em}}
.sect1:last-child{padding-bottom:0}
.sect1+.sect1{border-top:1px solid #e7e7e9}
#content h1>a.anchor,h2>a.anchor,h3>a.anchor,#toctitle>a.anchor,.sidebarblock>.content>.title>a.anchor,h4>a.anchor,h5>a.anchor,h6>a.anchor{position:absolute;z-index:1001;width:1.5ex;margin-left:-1.5ex;display:block;text-decoration:none!important;visibility:hidden;text-align:center;font-weight:400}
#content h1>a.anchor::before,h2>a.anchor::before,h3>a.anchor::before,#toctitle>a.anchor::before,.sidebarblock>.content>.title>a.anchor::before,h4>a.anchor::before,h5>a.anchor::before,h6>a.anchor::before{content:"\00A7";font-size:.85em;display:block;padding-top:.1em}
#content h1:hover>a.anchor,#content h1>a.anchor:hover,h2:hover>a.anchor,h2>a.anchor:hover,h3:hover>a.anchor,#toctitle:hover>a.anchor,.sidebarblock>.content>.title:hover>a.anchor,h3>a.anchor:hover,#toctitle>a.anchor:hover,.sidebarblock>.content>.title>a.anchor:hover,h4:hover>a.anchor,h4>a.anchor:hover,h5:hover>a.anchor,h5>a.anchor:hover,h6:hover>a.anchor,h6>a.anchor:hover{visibility:visible}
#content h1>a.link,h2>a.link,h3>a.link,#toctitle>a.link,.sidebarblock>.content>.title>a.link,h4>a.link,h5>a.link,h6>a.link{color:#ba3925;text-decoration:none}
#content h1>a.link:hover,h2>a.link:hover,h3>a.link:hover,#toctitle>a.link:hover,.sidebarblock>.content>.title>a.link:hover,h4>a.link:hover,h5>a.link:hover,h6>a.link:hover{color:#a53221}
details,.audioblock,.imageblock,.literalblock,.listingblock,.stemblock,.videoblock{margin-bottom:1.25em}
details{margin-left:1.25rem}
details>summary{cursor:pointer;display:block;position:relative;line-height:1.6;margin-bottom:.625rem;outline:none;-webkit-tap-highlight-color:transparent}
details>summary::-webkit-details-marker{display:none}
details>summary::before{content:"";border:solid transparent;border-left:solid;border-width:.3em 0 .3em .5em;position:absolute;top:.5em;left:-1.25rem;transform:translateX(15%)}
details[open]>summary::before{border:solid transparent;border-top:solid;border-width:.5em .3em 0;transform:translateY(15%)}
details>summary::after{content:"";width:1.25rem;height:1em;position:absolute;top:.3em;left:-1.25rem}
.admonitionblock td.content>.title,.audioblock>.title,.exampleblock>.title,.imageblock>.title,.listingblock>.title,.literalblock>.title,.stemblock>.title,.openblock>.title,.paragraph>.title,.quoteblock>.title,table.tableblock>.title,.verseblock>.title,.videoblock>.title,.dlist>.title,.olist>.title,.ulist>.title,.qlist>.title,.hdlist>.title{text-rendering:optimizeLegibility;text-align:left;font-family:"Noto Serif","DejaVu Serif",serif;font-size:1rem;font-style:italic}
table.tableblock.fit-content>caption.title{white-space:nowrap;width:0}
.paragraph.lead>p,#preamble>.sectionbody>[class=paragraph]:first-of-type p{font-size:1.21875em;line-height:1.6;color:rgba(0,0,0,.85)}
.admonitionblock>table{border-collapse:separate;border:0;background:none;width:100%}
.admonitionblock>table td.icon{text-align:center;width:80px}
.admonitionblock>table td.icon img{max-width:none}
.admonitionblock>table td.icon .title{font-weight:bold;font-family:"Open Sans","DejaVu Sans",sans-serif;text-transform:uppercase}
.admonitionblock>table td.content{padding-left:1.125em;padding-right:1.25em;border-left:1px solid #dddddf;color:rgba(0,0,0,.6);word-wrap:anywhere}
.admonitionblock>table td.content>:last-child>:last-child{margin-bottom:0}
.exampleblock>.content{border:1px solid #e6e6e6;margin-bottom:1.25em;padding:1.25em;background:#fff;border-radius:4px}
.exampleblock>.content>:first-child{margin-top:0}
.exampleblock>.content>:last-child{margin-bottom:0}
.sidebarblock{border:1px solid #dbdbd6;margin-bottom:1.25em;padding:1.25em;background:#f3f3f2;border-radius:4px}
.sidebarblock>:first-child{margin-top:0}
.sidebarblock>:last-child{margin-bottom:0}
.sidebarblock>.content>.title{color:#7a2518;margin-top:0;text-align:center}
.exampleblock>.content>:last-child>:last-child,.exampleblock>.content .olist>ol>li:last-child>:last-child,.exampleblock>.content .ulist>ul>li:last-child>:last-child,.exampleblock>.content .qlist>ol>li:last-child>:last-child,.sidebarblock>.content>:last-child>:last-child,.sidebarblock>.content .olist>ol>li:last-child>:last-child,.sidebarblock>.content .ulist>ul>li:last-child>:last-child,.sidebarblock>.content .qlist>ol>li:last-child>:last-child{margin-bottom:0}
.literalblock pre,.listingblock>.content>pre{border-radius:4px;overflow-x:auto;padding:1em;font-size:.8125em}
@media screen and (min-width:768px){.literalblock pre,.listingblock>.content>pre{font-size:.90625em}}
@media screen and (min-width:1280px){.literalblock pre,.listingblock>.content>pre{font-size:1em}}
.literalblock pre,.listingblock>.content>pre:not(.highlight),.listingblock>.content>pre[class=highlight],.listingblock>.content>pre[class^="highlight "]{background:#f7f7f8}
.literalblock.output pre{color:#f7f7f8;background:rgba(0,0,0,.9)}
.listingblock>.content{position:relative}
.listingblock code[data-lang]::before{display:none;content:attr(data-lang);position:absolute;font-size:.75em;top:.425rem;right:.5rem;line-height:1;text-transform:uppercase;color:inherit;opacity:.5}
.listingblock:hover code[data-lang]::before{display:block}
.listingblock.terminal pre .command::before{content:attr(data-prompt);padding-right:.5em;color:inherit;opacity:.5}
.listingblock.terminal pre .command:not([data-prompt])::before{content:"$"}
.listingblock pre.highlightjs{padding:0}
.listingblock pre.highlightjs>code{padding:1em;border-radius:4px}
.listingblock pre.prettyprint{border-width:0}
.prettyprint{background:#f7f7f8}
pre.prettyprint .linenums{line-height:1.45;margin-left:2em}
pre.prettyprint li{background:none;list-style-type:inherit;padding-left:0}
pre.prettyprint li code[data-lang]::before{opacity:1}
pre.prettyprint li:not(:first-child) code[data-lang]::before{display:none}
table.linenotable{border-collapse:separate;border:0;margin-bottom:0;background:none}
table.linenotable td[class]{color:inherit;vertical-align:top;padding:0;line-height:inherit;white-space:normal}
table.linenotable td.code{padding-left:.75em}
table.linenotable td.linenos,pre.pygments .linenos{border-right:1px solid;opacity:.35;padding-right:.5em;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}
pre.pygments span.linenos{display:inline-block;margin-right:.75em}
.quoteblock{margin:0 1em 1.25em 1.5em;display:table}
.quoteblock:not(.excerpt)>.title{margin-left:-1.5em;margin-bottom:.75em}
.quoteblock blockquote,.quoteblock p{color:rgba(0,0,0,.85);font-size:1.15rem;line-height:1.75;word-spacing:.1em;letter-spacing:0;font-style:italic;text-align:justify}
.quoteblock blockquote{margin:0;padding:0;border:0}
.quoteblock blockquote::before{content:"\201c";float:left;font-size:2.75em;font-weight:bold;line-height:.6em;margin-left:-.6em;color:#7a2518;text-shadow:0 1px 2px rgba(0,0,0,.1)}
.quoteblock blockquote>.paragraph:last-child p{margin-bottom:0}
.quoteblock .attribution{margin-top:.75em;margin-right:.5ex;text-align:right}
.verseblock{margin:0 1em 1.25em}
.verseblock pre{font-family:"Open Sans","DejaVu Sans",sans-serif;font-size:1.15rem;color:rgba(0,0,0,.85);font-weight:300;text-rendering:optimizeLegibility}
.verseblock pre strong{font-weight:400}
.verseblock .attribution{margin-top:1.25rem;margin-left:.5ex}
.quoteblock .attribution,.verseblock .attribution{font-size:.9375em;line-height:1.45;font-style:italic}
.quoteblock .attribution br,.verseblock .attribution br{display:none}
.quoteblock .attribution cite,.verseblock .attribution cite{display:block;letter-spacing:-.025em;color:rgba(0,0,0,.6)}
.quoteblock.abstract blockquote::before,.quoteblock.excerpt blockquote::before,.quoteblock .quoteblock blockquote::before{display:none}
.quoteblock.abstract blockquote,.quoteblock.abstract p,.quoteblock.excerpt blockquote,.quoteblock.excerpt p,.quoteblock .quoteblock blockquote,.quoteblock .quoteblock p{line-height:1.6;word-spacing:0}
.quoteblock.abstract{margin:0 1em 1.25em;display:block}
.quoteblock.abstract>.title{margin:0 0 .375em;font-size:1.15em;text-align:center}
.quoteblock.excerpt>blockquote,.quoteblock .quoteblock{padding:0 0 .25em 1em;border-left:.25em solid #dddddf}
.quoteblock.excerpt,.quoteblock .quoteblock{margin-left:0}
.quoteblock.excerpt blockquote,.quoteblock.excerpt p,.quoteblock .quoteblock blockquote,.quoteblock .quoteblock p{color:inherit;font-size:1.0625rem}
.quoteblock.excerpt .attribution,.quoteblock .quoteblock .attribution{color:inherit;font-size:.85rem;text-align:left;margin-right:0}
p.tableblock:last-child{margin-bottom:0}
td.tableblock>.content{margin-bottom:1.25em;word-wrap:anywhere}
td.tableblock>.content>:last-child{margin-bottom:-1.25em}
table.tableblock,th.tableblock,td.tableblock{border:0 solid #dedede}
table.grid-all>*>tr>*{border-width:1px}
table.grid-cols>*>tr>*{border-width:0 1px}
table.grid-rows>*>tr>*{border-width:1px 0}
table.frame-all{border-width:1px}
table.frame-ends{border-width:1px 0}
table.frame-sides{border-width:0 1px}
table.frame-none>colgroup+*>:first-child>*,table.frame-sides>colgroup+*>:first-child>*{border-top-width:0}
table.frame-none>:last-child>:last-child>*,table.frame-sides>:last-child>:last-child>*{border-bottom-width:0}
table.frame-none>*>tr>:first-child,table.frame-ends>*>tr>:first-child{border-left-width:0}
table.frame-none>*>tr>:last-child,table.frame-ends>*>tr>:last-child{border-right-width:0}
table.stripes-all>*>tr,table.stripes-odd>*>tr:nth-of-type(odd),table.stripes-even>*>tr:nth-of-type(even),table.stripes-hover>*>tr:hover{background:#f8f8f7}
th.halign-left,td.halign-left{text-align:left}
th.halign-right,td.halign-right{text-align:right}
th.halign-center,td.halign-center{text-align:center}
th.valign-top,td.valign-top{vertical-align:top}
th.valign-bottom,td.valign-bottom{vertical-align:bottom}
th.valign-middle,td.valign-middle{vertical-align:middle}
table thead th,table tfoot th{font-weight:bold}
tbody tr th{background:#f7f8f7}
tbody tr th,tbody tr th p,tfoot tr th,tfoot tr th p{color:rgba(0,0,0,.8);font-weight:bold}
p.tableblock>code:only-child{background:none;padding:0}
p.tableblock{font-size:1em}
ol{margin-left:1.75em}
ul li ol{margin-left:1.5em}
dl dd{margin-left:1.125em}
dl dd:last-child,dl dd:last-child>:last-child{margin-bottom:0}
li p,ul dd,ol dd,.olist .olist,.ulist .ulist,.ulist .olist,.olist .ulist{margin-bottom:.625em}
ul.checklist,ul.none,ol.none,ul.no-bullet,ol.no-bullet,ol.unnumbered,ul.unstyled,ol.unstyled{list-style-type:none}
ul.no-bullet,ol.no-bullet,ol.unnumbered{margin-left:.625em}
ul.unstyled,ol.unstyled{margin-left:0}
li>p:empty:only-child::before{content:"";display:inline-block}
ul.checklist>li>p:first-child{margin-left:-1em}
ul.checklist>li>p:first-child>.fa-square-o:first-child,ul.checklist>li>p:first-child>.fa-check-square-o:first-child{width:1.25em;font-size:.8em;position:relative;bottom:.125em}
ul.checklist>li>p:first-child>input[type=checkbox]:first-child{margin-right:.25em}
ul.inline{display:flex;flex-flow:row wrap;list-style:none;margin:0 0 .625em -1.25em}
ul.inline>li{margin-left:1.25em}
.unstyled dl dt{font-weight:400;font-style:normal}
ol.arabic{list-style-type:decimal}
ol.decimal{list-style-type:decimal-leading-zero}
ol.loweralpha{list-style-type:lower-alpha}
ol.upperalpha{list-style-type:upper-alpha}
ol.lowerroman{list-style-type:lower-roman}
ol.upperroman{list-style-type:upper-roman}
ol.lowergreek{list-style-type:lower-greek}
.hdlist>table,.colist>table{border:0;background:none}
.hdlist>table>tbody>tr,.colist>table>tbody>tr{background:none}
td.hdlist1,td.hdlist2{vertical-align:top;padding:0 .625em}
td.hdlist1{font-weight:bold;padding-bottom:1.25em}
td.hdlist2{word-wrap:anywhere}
.literalblock+.colist,.listingblock+.colist{margin-top:-.5em}
.colist td:not([class]):first-child{padding:.4em .75em 0;line-height:1;vertical-align:top}
.colist td:not([class]):first-child img{max-width:none}
.colist td:not([class]):last-child{padding:.25em 0}
.thumb,.th{line-height:0;display:inline-block;border:4px solid #fff;box-shadow:0 0 0 1px #ddd}
.imageblock.left{margin:.25em .625em 1.25em 0}
.imageblock.right{margin:.25em 0 1.25em .625em}
.imageblock>.title{margin-bottom:0}
.imageblock.thumb,.imageblock.th{border-width:6px}
.imageblock.thumb>.title,.imageblock.th>.title{padding:0 .125em}
.image.left,.image.right{margin-top:.25em;margin-bottom:.25em;display:inline-block;line-height:0}
.image.left{margin-right:.625em}
.image.right{margin-left:.625em}
a.image{text-decoration:none;display:inline-block}
a.image object{pointer-events:none}
sup.footnote,sup.footnoteref{font-size:.875em;position:static;vertical-align:super}
sup.footnote a,sup.footnoteref a{text-decoration:none}
sup.footnote a:active,sup.footnoteref a:active{text-decoration:underline}
#footnotes{padding-top:.75em;padding-bottom:.75em;margin-bottom:.625em}
#footnotes hr{width:20%;min-width:6.25em;margin:-.25em 0 .75em;border-width:1px 0 0}
#footnotes .footnote{padding:0 .375em 0 .225em;line-height:1.3334;font-size:.875em;margin-left:1.2em;margin-bottom:.2em}
#footnotes .footnote a:first-of-type{font-weight:bold;text-decoration:none;margin-left:-1.05em}
#footnotes .footnote:last-of-type{margin-bottom:0}
#content #footnotes{margin-top:-.625em;margin-bottom:0;padding:.75em 0}
div.unbreakable{page-break-inside:avoid}
.big{font-size:larger}
.small{font-size:smaller}
.underline{text-decoration:underline}
.overline{text-decoration:overline}
.line-through{text-decoration:line-through}
.aqua{color:#00bfbf}
.aqua-background{background:#00fafa}
.black{color:#000}
.black-background{background:#000}
.blue{color:#0000bf}
.blue-background{background:#0000fa}
.fuchsia{color:#bf00bf}
.fuchsia-background{background:#fa00fa}
.gray{color:#606060}
.gray-background{background:#7d7d7d}
.green{color:#006000}
.green-background{background:#007d00}
.lime{color:#00bf00}
.lime-background{background:#00fa00}
.maroon{color:#600000}
.maroon-background{background:#7d0000}
.navy{color:#000060}
.navy-background{background:#00007d}
.olive{color:#606000}
.olive-background{background:#7d7d00}
.purple{color:#600060}
.purple-background{background:#7d007d}
.red{color:#bf0000}
.red-background{background:#fa0000}
.silver{color:#909090}
.silver-background{background:#bcbcbc}
.teal{color:#006060}
.teal-background{background:#007d7d}
.white{color:#bfbfbf}
.white-background{background:#fafafa}
.yellow{color:#bfbf00}
.yellow-background{background:#fafa00}
span.icon>.fa{cursor:default}
a span.icon>.fa{cursor:inherit}
.admonitionblock td.icon [class^="fa icon-"]{font-size:2.5em;text-shadow:1px 1px 2px rgba(0,0,0,.5);cursor:default}
.admonitionblock td.icon .icon-note::before{content:"\f05a";color:#19407c}
.admonitionblock td.icon .icon-tip::before{content:"\f0eb";text-shadow:1px 1px 2px rgba(155,155,0,.8);color:#111}
.admonitionblock td.icon .icon-warning::before{content:"\f071";color:#bf6900}
.admonitionblock td.icon .icon-caution::before{content:"\f06d";color:#bf3400}
.admonitionblock td.icon .icon-important::before{content:"\f06a";color:#bf0000}
.conum[data-value]{display:inline-block;color:#fff!important;background:rgba(0,0,0,.8);border-radius:50%;text-align:center;font-size:.75em;width:1.67em;height:1.67em;line-height:1.67em;font-family:"Open Sans","DejaVu Sans",sans-serif;font-style:normal;font-weight:bold}
.conum[data-value] *{color:#fff!important}
.conum[data-value]+b{display:none}
.conum[data-value]::after{content:attr(data-value)}
pre .conum[data-value]{position:relative;top:-.125em}
b.conum *{color:inherit!important}
.conum:not([data-value]):empty{display:none}
dt,th.tableblock,td.content,div.footnote{text-rendering:optimizeLegibility}
h1,h2,p,td.content,span.alt,summary{letter-spacing:-.01em}
p strong,td.content strong,div.footnote strong{letter-spacing:-.005em}
p,blockquote,dt,td.content,span.alt,summary{font-size:1.0625rem}
p{margin-bottom:1.25rem}
.sidebarblock p,.sidebarblock dt,.sidebarblock td.content,p.tableblock{font-size:1em}
.exampleblock>.content{background:#fffef7;border-color:#e0e0dc;box-shadow:0 1px 4px #e0e0dc}
.print-only{display:none!important}
@page{margin:1.25cm .75cm}
@media print{*{box-shadow:none!important;text-shadow:none!important}
html{font-size:80%}
a{color:inherit!important;text-decoration:underline!important}
a.bare,a[href^="#"],a[href^="mailto:"]{text-decoration:none!important}
a[href^="http:"]:not(.bare)::after,a[href^="https:"]:not(.bare)::after{content:"(" attr(href) ")";display:inline-block;font-size:.875em;padding-left:.25em}
abbr[title]{border-bottom:1px dotted}
abbr[title]::after{content:" (" attr(title) ")"}
pre,blockquote,tr,img,object,svg{page-break-inside:avoid}
thead{display:table-header-group}
svg{max-width:100%}
p,blockquote,dt,td.content{font-size:1em;orphans:3;widows:3}
h2,h3,#toctitle,.sidebarblock>.content>.title{page-break-after:avoid}
#header,#content,#footnotes,#footer{max-width:none}
#toc,.sidebarblock,.exampleblock>.content{background:none!important}
#toc{border-bottom:1px solid #dddddf!important;padding-bottom:0!important}
body.book #header{text-align:center}
body.book #header>h1:first-child{border:0!important;margin:2.5em 0 1em}
body.book #header .details{border:0!important;display:block;padding:0!important}
body.book #header .details span:first-child{margin-left:0!important}
body.book #header .details br{display:block}
body.book #header .details br+span::before{content:none!important}
body.book #toc{border:0!important;text-align:left!important;padding:0!important;margin:0!important}
body.book #toc,body.book #preamble,body.book h1.sect0,body.book .sect1>h2{page-break-before:always}
.listingblock code[data-lang]::before{display:block}
#footer{padding:0 .9375em}
.hide-on-print{display:none!important}
.print-only{display:block!important}
.hide-for-print{display:none!important}
.show-for-print{display:inherit!important}}
@media amzn-kf8,print{#header>h1:first-child{margin-top:1.25rem}
.sect1{padding:0!important}
.sect1+.sect1{border:0}
#footer{background:none}
#footer-text{color:rgba(0,0,0,.6);font-size:.9em}}
@media amzn-kf8{#header,#content,#footnotes,#footer{padding:0}}
</style>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css">
</head>
<body class="article toc2 toc-left">
<div id="header">
<h1>Awesome Interactive Fiction <a href="https://awesome.re" title="Awesome" target="_blank" rel="noopener"><span class="image"><img src="https://awesome.re/badge.svg" alt="badge"></span></a></h1>
<div class="details">
<span id="author" class="author">Tristano Ajmone</span><br>
<span id="email" class="email"><a href="mailto:tajmone@gmail.com">tajmone@gmail.com</a></span><br>
<span id="revdate">2022-01-30</span>
</div>
<div id="toc" class="toc2">
<div id="toctitle">Contents</div>
<ul class="sectlevel1">
<li><a href="#introductory-material">1. Introductory Material</a></li>
<li><a href="#if-authoring-tools">2. IF Authoring Tools</a>
<ul class="sectlevel2">
<li><a href="#adrift">2.1. ADRIFT</a></li>
<li><a href="#adventuron">2.2. Adventuron</a></li>
<li><a href="#aiee">2.3. Aiee!</a></li>
<li><a href="#alan">2.4. Alan</a></li>
<li><a href="#curveship">2.5. Curveship</a></li>
<li><a href="#hugo">2.6. Hugo</a></li>
<li><a href="#inform-6">2.7. Inform 6</a></li>
<li><a href="#inform-7">2.8. Inform 7</a></li>
<li><a href="#ink">2.9. Ink</a></li>
<li><a href="#t-a-b">2.10. T.A.B.</a></li>
<li><a href="#tads">2.11. TADS</a></li>
<li><a href="#tuvi">2.12. Tuvi</a></li>
<li><a href="#twine">2.13. Twine</a></li>
<li><a href="#undum">2.14. Undum</a></li>
<li><a href="#varytale">2.15. Varytale</a></li>
<li><a href="#versu">2.16. Versu</a></li>
<li><a href="#xvan">2.17. XVAN</a></li>
<li><a href="#yarn">2.18. Yarn</a></li>
<li><a href="#yarn-spinner">2.19. Yarn Spinner</a></li>
</ul>
</li>
<li><a href="#if-authoring-tools-in-spanish">3. IF Authoring Tools in Spanish</a>
<ul class="sectlevel2">
<li><a href="#superglús">3.1. Superglús</a></li>
</ul>
</li>
<li><a href="#if-authoring-tools-in-italian">4. IF Authoring Tools in Italian</a>
<ul class="sectlevel2">
<li><a href="#confabula">4.1. Confabula</a></li>
</ul>
</li>
<li><a href="#interpreters">5. Interpreters</a>
<ul class="sectlevel2">
<li><a href="#cross-platform">5.1. Cross Platform</a></li>
<li><a href="#macos">5.2. macOS</a></li>
<li><a href="#ms-windows">5.3. MS Windows</a></li>
<li><a href="#mobile-devices">5.4. Mobile Devices</a>
<ul class="sectlevel3">
<li><a href="#andorid">Andorid</a></li>
<li><a href="#iphone">iPhone</a></li>
<li><a href="#palmos">PalmOS</a></li>
</ul>
</li>
<li><a href="#in-browser-players">5.5. In-Browser Players</a></li>
</ul>
</li>
<li><a href="#mapping-tools">6. Mapping Tools</a>
<ul class="sectlevel2">
<li><a href="#cross-platform-2">6.1. Cross Platform</a></li>
<li><a href="#macos-2">6.2. macOS</a></li>
<li><a href="#ms-windows-2">6.3. MS Windows</a></li>
<li><a href="#linuxnix">6.4. Linux/*nix</a></li>
<li><a href="#mobile-devices-2">6.5. Mobile Devices</a>
<ul class="sectlevel3">
<li><a href="#palmos-2">PalmOS</a></li>
</ul>
</li>
<li><a href="#if-system-specific-mapping-tools">6.6. IF System-Specific Mapping Tools</a>
<ul class="sectlevel3">
<li><a href="#mapping-tools-tads">TADS</a></li>
</ul>
</li>
</ul>
</li>
<li><a href="#standards-and-specifications">7. Standards and Specifications</a>
<ul class="sectlevel2">
<li><a href="#files-extensions-and-formats">7.1. Files Extensions and Formats</a></li>
<li><a href="#story-files-by-extensions">7.2. Story Files by Extensions</a></li>
<li><a href="#source-files-by-extensions">7.3. Source Files by Extensions</a></li>
<li><a href="#other-if-file-extensions">7.4. Other IF File Extensions</a></li>
<li><a href="#virtual-machines">7.5. Virtual Machines</a>
<ul class="sectlevel3">
<li><a href="#z-machine">Z-machine</a></li>
<li><a href="#glulx">Glulx</a></li>
<li><a href="#t3-vm">T3 VM</a></li>
</ul>
</li>
<li><a href="#if-standards">7.6. IF Standards</a>
<ul class="sectlevel3">
<li><a href="#blorb">Blorb</a></li>
<li><a href="#the-treaty-of-babel">The Treaty of Babel</a></li>
</ul>
</li>
</ul>
</li>
<li><a href="#collections">8. Collections</a></li>
<li><a href="#blogs">9. Blogs</a></li>
<li><a href="#competitions-awards">10. Competitions &amp; Awards</a>
<ul class="sectlevel2">
<li><a href="#annual-competitions">10.1. Annual Competitions</a></li>
<li><a href="#annual-awards">10.2. Annual Awards</a></li>
<li><a href="#others">10.3. Others</a></li>
</ul>
</li>
<li><a href="#if-learning-resources">11. IF Learning Resources</a>
<ul class="sectlevel2">
<li><a href="#magazines">11.1. Magazines</a>
<ul class="sectlevel3">
<li><a href="#discoverers-digest">Discoverer&#8217;s Digest</a></li>
</ul>
</li>
<li><a href="#free-ebooks">11.2. Free eBooks</a>
<ul class="sectlevel3">
<li><a href="#if-history">IF History</a></li>
<li><a href="#if-theory">IF Theory</a></li>
<li><a href="#inform-6-2">Inform 6</a></li>
<li><a href="#inform-7-2">Inform 7</a></li>
<li><a href="#paw">PAW</a></li>
</ul>
</li>
<li><a href="#commercial-books">11.3. Commercial Books</a>
<ul class="sectlevel3">
<li><a href="#if-history-2">IF History</a></li>
<li><a href="#inform-7-3">Inform 7</a></li>
<li><a href="#twine-2">Twine</a></li>
</ul>
</li>
<li><a href="#documentaries">11.4. Documentaries</a></li>
<li><a href="#tutorials">11.5. Tutorials</a>
<ul class="sectlevel3">
<li><a href="#if-authoring-guides">IF Authoring Guides</a></li>
<li><a href="#designing-if-authoring-systems">Designing IF Authoring Systems</a></li>
<li><a href="#inform-7-4">Inform 7</a></li>
</ul>
</li>
<li><a href="#cheat-sheets-and-reference-docs">11.6. Cheat Sheets and Reference Docs</a>
<ul class="sectlevel3">
<li><a href="#inform-6-3">Inform 6</a></li>
</ul>
</li>
</ul>
</li>
<li><a href="#if-for-teaching-and-education">12. IF for Teaching and Education</a>
<ul class="sectlevel2">
<li><a href="#online-resources">12.1. Online Resources</a></li>
<li><a href="#examples">12.2. Examples</a></li>
<li><a href="#books">12.3. Books</a></li>
<li><a href="#whitepapers-and-guides">12.4. Whitepapers and Guides</a></li>
<li><a href="#articles-and-academic-papers">12.5. Articles and Academic Papers</a></li>
</ul>
</li>
<li><a href="#social-events">13. Social Events</a>
<ul class="sectlevel2">
<li><a href="#conferences">13.1. Conferences</a></li>
<li><a href="#meetups">13.2. Meetups</a></li>
</ul>
</li>
<li><a href="#digital-communities">14. Digital Communities</a>
<ul class="sectlevel2">
<li><a href="#forums">14.1. Forums</a></li>
<li><a href="#newsgroups-and-mailing-lists">14.2. Newsgroups and Mailing Lists</a>
<ul class="sectlevel3">
<li><a href="#english">English</a></li>
<li><a href="#italian">Italian</a></li>
</ul>
</li>
<li><a href="#muds">14.3. MUDs</a>
<ul class="sectlevel3">
<li><a href="#ifmud">ifMUD</a></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
<div id="content">
<div id="preamble">
<div class="sectionbody">
<!--
********************************************************************************
*                                                                              *
*                       !!! DON'T EDIT THIS DOCUMENT !!!                       *
*                                                                              *
********************************************************************************

This document was auto-generated from multiple AsciiDoc source files inside the
"docs_src/" folder; all changes would be lost when the document is updated!
If you want to contribute to this document, edit those source files instead.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-->
<div class="exampleblock">
<div class="content">
<div class="openblock float-group">
<div class="content">
<div class="paragraph">
<p><a href="https://github.com/tajmone/awesome-interactive-fiction" title="Awesome Interactive Fiction" target="_blank" rel="noopener"><span class="image right"><img src="Awesome-IF.png" alt="Awesome IF" width="400"></span></a></p>
</div>
<div class="paragraph">
<p>A curated list of interactive fiction frameworks, tools, and resources.
Created by <a href="https://github.com/yakiradixon" target="_blank" rel="noopener">Yakira Dixon</a> in 2014, currently maintained by <a href="https://github.com/tajmone" target="_blank" rel="noopener">Tristano Ajmone</a>.</p>
</div>
<div class="paragraph">
<p><a href="http://creativecommons.org/publicdomain/zero/1.0/" title="CC0 1.0 Universal, Public Domain" target="_blank" rel="noopener"><span class="image"><img src="https://img.shields.io/badge/license-CC0-00b5da.svg" alt="CC0"></span></a></p>
</div>
<div class="ulist">
<ul>
<li>
<p><a href="https://git.io/awesome-if" title="View website version of Awesome IF " target="_blank" rel="noopener">git.io/awesome-if</a></p>
</li>
<li>
<p><a href="https://github.com/tajmone/awesome-interactive-fiction" title="View Awesome IF repository on GitHub" target="_blank" rel="noopener">github.com/tajmone/awesome-interactive-fiction</a></p>
</li>
</ul>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="sect1">
<h2 id="introductory-material"><a class="anchor" href="#introductory-material"></a>1. Introductory Material</h2>
<div class="sectionbody">
<div class="paragraph">
<p>Newcomers to Interactive Fiction will find these links helpful:</p>
</div>
<div class="ulist">
<ul>
<li>
<p><a href="http://inform7.com/learn/eg/dm/IntroductionToIF.pdf" target="_blank" rel="noopener">Introduction to Interactive Fiction</a>&#8201;&#8212;&#8201;by Emily Short; 8pp (PDF). Also available in other languages:</p>
<div class="ulist">
<ul>
<li>
<p>Italian » <a href="https://www.youdev.it/if/Titolo/Introduzione%20alle%20Avventure%20Testuali.pdf" target="_blank" rel="noopener">Introduzione alle Avventure Testuali</a></p>
</li>
<li>
<p>French » <a href="http://ifiction.free.fr/fichiers/Introduction-IF-fr.pdf" target="_blank" rel="noopener">Introduction à la fiction interactive</a></p>
</li>
</ul>
</div>
</li>
<li>
<p><a href="http://www.brasslantern.org/beginners/beginnersguide.html" target="_blank" rel="noopener">Brass Lantern&#8217;s Beginner&#8217;s Guide to Interactive Fiction</a>&#8201;&#8212;&#8201;by Stephen Granade and Emily Short.</p>
</li>
<li>
<p><a href="https://eblong.com/zarf/if.html" target="_blank" rel="noopener">Zarf&#8217;s Interactive Fiction</a>&#8201;&#8212;&#8201;an introductory website for IF newbies, by Andrew Plotkin (aka Zarf).</p>
</li>
<li>
<p><a href="https://pr-if.org/doc/play-if-card/" target="_blank" rel="noopener">Player&#8217;s Cheat Sheet</a>&#8201;&#8212;&#8201;a card to help new IF players with game commands (available in various languages).</p>
</li>
</ul>
</div>
</div>
</div>
<div class="sect1">
<h2 id="if-authoring-tools"><a class="anchor" href="#if-authoring-tools"></a>2. IF Authoring Tools</h2>
<div class="sectionbody">
<div class="sect2">
<h3 id="adrift"><a class="anchor" href="#adrift"></a>2.1. ADRIFT</h3>
<div class="ulist">
<ul>
<li>
<p><a href="http://www.adrift.co/" target="_blank" rel="noopener">www.adrift.co</a></p>
</li>
<li>
<p><a href="https://github.com/jcwild/ADRIFT-5/" target="_blank" rel="noopener">github.com/jcwild/ADRIFT-5</a></p>
</li>
</ul>
</div>
<div class="paragraph">
<p>ADRIFT (Adventure Development &amp; Runner&#8201;&#8212;&#8201;Interactive Fiction Toolkit) is a GUI driven IF development system for Windows, allowing to create text adventures via dialog boxes and GUI controls instead of writing code. Supports graphics and sounds.</p>
</div>
<div class="paragraph">
<p>Developed by Campbell Wild since 1997, ADRIFT Developer (formerly called Adventure Generator) used to be a commercial product, then in 2011 it became freeware, and now the full source code is available on GitHub under BSD 3-Clause license.</p>
</div>
<div class="paragraph">
<p>There are different versions of ADRIFT, adventures created with a specific version of ADRIFT Developer should be played with the same version of ADRIFT Runner&#8201;&#8212;&#8201;but ADRIFT Runner 5 should be able to run adventures created for v4:</p>
</div>
<div class="ulist">
<ul>
<li>
<p><strong>ADRIFT 5.0</strong> (2011–)</p>
</li>
<li>
<p><strong>ADRIFT 4.0</strong> (2002–2012)</p>
</li>
<li>
<p><strong>ADRIFT 3.9</strong> (2001)</p>
</li>
<li>
<p><strong>ADRIFT 2.0</strong> (aka Adventure Generator, 1997)&#8201;&#8212;&#8201;legacy 16-bit DOS app</p>
</li>
</ul>
</div>
<div class="admonitionblock tip">
<table>
<tr>
<td class="icon">
<i class="fa icon-tip" title="Tip"></i>
</td>
<td class="content">
Suggested GitHub topics:
<a href="https://github.com/topics/adrift" target="_blank" rel="noopener"><code>adrift</code></a>
<a href="https://github.com/topics/adrift5" target="_blank" rel="noopener"><code>adrift5</code></a>
<a href="https://github.com/topics/adrift-5" target="_blank" rel="noopener"><code>adrift-5</code></a>
</td>
</tr>
</table>
</div>
<div class="paragraph">
<p>For more information, see also:</p>
</div>
<div class="ulist">
<ul>
<li>
<p><a href="http://www.ifwiki.org/index.php/ADRIFT" target="_blank" rel="noopener">IFWiki » ADRIFT</a></p>
</li>
<li>
<p><a href="https://en.wikipedia.org/wiki/ADRIFT" target="_blank" rel="noopener">Wikipedia » ADRIFT</a></p>
</li>
</ul>
</div>
</div>
<div class="sect2">
<h3 id="adventuron"><a class="anchor" href="#adventuron"></a>2.2. Adventuron</h3>
<div class="ulist">
<ul>
<li>
<p><a href="https://adventuron.io" target="_blank" rel="noopener">adventuron.io</a></p>
</li>
<li>
<p><a href="https://adventuron.itch.io" target="_blank" rel="noopener">adventuron.itch.io</a></p>
</li>
</ul>
</div>
<div class="paragraph">
<p>A free to use, proprietary (closed source) in-browser text adventure and gamebook authoring tool, by Adventuron Software Limited, UK.</p>
</div>
<div class="ulist">
<ul>
<li>
<p><a href="https://adventuron.io/documentation/" target="_blank" rel="noopener">Adventuron User Guide</a></p>
</li>
</ul>
</div>
</div>
<div class="sect2">
<h3 id="aiee"><a class="anchor" href="#aiee"></a>2.3. Aiee!</h3>
<div class="ulist">
<ul>
<li>
<p><a href="https://web.archive.org/web/20180817013622/http://markdamonhughes.com/Aiee/" target="_blank" rel="noopener">markdamonhughes.com/Aiee</a> (Wayback Machine, 2018)</p>
</li>
</ul>
</div>
<div class="paragraph">
<p>Aiee! is a cross-platform tool (Java) for creating and playing text adventures, or "interactive fiction". Aiee! adventures are written in a simple XML-based format, without the need for any programming experience. Aiee! adventures can even include illustrations and sound.</p>
</div>
</div>
<div class="sect2">
<h3 id="alan"><a class="anchor" href="#alan"></a>2.4. Alan</h3>
<div class="ulist">
<ul>
<li>
<p><a href="https://www.alanif.se/" target="_blank" rel="noopener">www.alanif.se</a></p>
</li>
<li>
<p><a href="https://groups.google.com/g/alan-if/" target="_blank" rel="noopener">Alan IF discussions</a>&#8201;&#8212;&#8201;official mailing list at Google Groups.</p>
</li>
</ul>
</div>
<div class="paragraph">
<p>Alan (Adventure LANguage) is an a cross-platform open source authoring system based on a dedicated IF language with an English-like syntax, intended to simplify writing adventures for non-programmers. Its webiste also offers a dedicated IDE and other useful tools to aid IF authoring.</p>
</div>
<div class="paragraph">
<p>Alan was created in 1985 by Thomas Nilsson (now Thomas Nilefalk) and Göran Forslund, and is actively maintained by Thomas Nilefalk. The latest version is <strong>Alan 3</strong>.</p>
</div>
<div class="admonitionblock tip">
<table>
<tr>
<td class="icon">
<i class="fa icon-tip" title="Tip"></i>
</td>
<td class="content">
Suggested GitHub topics:
<a href="https://github.com/topics/alan-if" target="_blank" rel="noopener"><code>alan-if</code></a>
<a href="https://github.com/topics/alan3" target="_blank" rel="noopener"><code>alan3</code></a>
</td>
</tr>
</table>
</div>
<div class="paragraph">
<p>For more information, see also:</p>
</div>
<div class="ulist">
<ul>
<li>
<p><a href="https://github.com/alan-if/alan/wiki" target="_blank" rel="noopener">Alan Wiki</a>&#8201;&#8212;&#8201;official Alan Wiki, publicly editable.</p>
</li>
<li>
<p><a href="http://www.ifwiki.org/index.php/Alan" target="_blank" rel="noopener">IFWiki » Alan</a></p>
</li>
</ul>
</div>
<div class="paragraph">
<p>Source repository:</p>
</div>
<div class="ulist">
<ul>
<li>
<p><a href="https://github.com/alan-if/alan" target="_blank" rel="noopener">github.com/alan-if/alan</a></p>
</li>
</ul>
</div>
<div class="paragraph">
<p>Libraries for Alan 3:</p>
</div>
<div class="ulist">
<ul>
<li>
<p><a href="https://github.com/AnssiR66/AlanStdLib" target="_blank" rel="noopener">github.com/AnssiR66/AlanStdLib</a>&#8201;&#8212;&#8201;Alan Standard Library v2, by Anssi Räisänen.</p>
</li>
<li>
<p><a href="https://github.com/alan-if/alan-goodies/tree/master/libs" target="_blank" rel="noopener">ALAN Library v0.6.2</a> (at Alan Goodies)&#8201;&#8212;&#8201;an earlier library ported from Alan 2, still working with current Alan version, but today mainly used to compile legacy adventures and tutorials. Deprecated in favour of the new StdLib v2.</p>
</li>
<li>
<p><a href="https://github.com/alan-if/alan-i18n" target="_blank" rel="noopener">github.com/alan-if/alan-i18n</a>&#8201;&#8212;&#8201;<strong>The ALAN Internationalization Project</strong>, multi-language translations of a basic ALAN&#160;IF library to create text adventures in different languages, and provide reference implementations to add support for new locales.</p>
</li>
</ul>
</div>
<div class="paragraph">
<p>Alan in other languages:</p>
</div>
<div class="ulist">
<ul>
<li>
<p><a href="https://github.com/tajmone/Alan3-Italian" target="_blank" rel="noopener">github.com/tajmone/Alan3-Italian</a>&#8201;&#8212;&#8201;Italian translation of the Alan StdLib 2, by Tristano Ajmone (incomplete Alpha).</p>
</li>
<li>
<p><a href="https://github.com/alan-if/alan-i18n/tree/main/alan_es" target="_blank" rel="noopener">Alan Spanish</a>&#8201;&#8212;&#8201;the pALANte library, by Bruce Humphrey and Marcos Donnantuoni.</p>
</li>
</ul>
</div>
<div class="paragraph">
<p>Books and tutorials:</p>
</div>
<div class="ulist">
<ul>
<li>
<p><a href="https://git.io/alan-docs" target="_blank" rel="noopener">git.io/alan-docs</a>&#8201;&#8212;&#8201;The official <strong>Alan Documentation</strong> website, offering various books, guides and tutorials for on-line consultation and download:</p>
<div class="ulist">
<ul>
<li>
<p><a href="https://alan-if.github.io/alan-docs/manual-beta/manual.html" target="_blank" rel="noopener"><em>The Alan Manual</em></a>&#8201;&#8212;&#8201;on-line version of the latest <em>ALAN Adventure Language Reference Manual</em>.</p>
</li>
<li>
<p><a href="https://alan-if.github.io/alan-docs/alancookbook/alancookbookv2.pdf" target="_blank" rel="noopener"><em>Alan Cookbook</em> v2</a>&#8201;&#8212;&#8201;Anssi Räisänen&#8217;s collection of tips and tricks on how to implement and achieve various effects in the ALAN language or using the Standard Library v2.</p>
</li>
<li>
<p><a href="https://alan-if.github.io/alan-docs/alanguide/alanguide.html" target="_blank" rel="noopener"><em>Alan 3 Beginner’s Guide</em></a>&#8201;&#8212;&#8201;Michael Arnaud&#8217;s step-by-step tutorial for the creation of the <em>TV TIME!</em> adventure using ALAN Library v0.6.1.</p>
</li>
<li>
<p><a href="https://alan-if.github.io/alan-docs/ideguide/ideguide.pdf" target="_blank" rel="noopener"><em>Alan IDE Reference Guide</em></a>&#8201;&#8212;&#8201;Robert DeFord&#8217;s guide on how to install, configure and use the Alan IDE to craft text adventure in ALAN.</p>
</li>
</ul>
</div>
</li>
</ul>
</div>
<div class="paragraph">
<p>Alan editors, IDEs and editor extensions:</p>
</div>
<div class="ulist">
<ul>
<li>
<p><a href="https://www.alanif.se/download-alan-v3/alanide" target="_blank" rel="noopener">AlanIDE</a>&#8201;&#8212;&#8201;complete Alan Integrated Development Environment, by Alan author Thomas Nilefalk. In Java/Eclipse.</p>
</li>
<li>
<p><a href="https://github.com/tajmone/sublime-alan-if" target="_blank" rel="noopener">Sublime Alan IF</a>&#8201;&#8212;&#8201;Alan 3 syntax for Sublime Text 4 (usable Alpha).</p>
</li>
</ul>
</div>
<div class="paragraph">
<p>Syntax highlighters supporting Alan:</p>
</div>
<div class="ulist">
<ul>
<li>
<p><a href="http://www.andre-simon.de/" target="_blank" rel="noopener">Highlight</a>&#8201;&#8212;&#8201;natively (see: <a href="https://gitlab.com/saalen/highlight/blob/master/langDefs/alan.lang" target="_blank" rel="noopener"><code>alan.lang</code></a> definition file).</p>
</li>
<li>
<p><a href="https://highlightjs.org/" target="_blank" rel="noopener">Highlight.js</a>&#8201;&#8212;&#8201;via <a href="https://github.com/highlightjs/highlightjs-alan" target="_blank" rel="noopener">external syntax definition for Alan</a>.</p>
</li>
<li>
<p><a href="http://xslthl.sourceforge.net/" target="_blank" rel="noopener">XSLTHL</a>&#8201;&#8212;&#8201;via <a href="https://github.com/alan-if/alan-xsl-fopub/blob/master/xsl-fopub/xslthl/alan-hl.xml" target="_blank" rel="noopener">external syntax definition for Alan</a>.</p>
</li>
</ul>
</div>
<div class="paragraph">
<p>Alan-related projects:</p>
</div>
<div class="ulist">
<ul>
<li>
<p><a href="https://github.com/alan-if/alan-docs" target="_blank" rel="noopener">github.com/alan-if/alan-docs</a>&#8201;&#8212;&#8201;Alan&#160;IF Documentation Project.</p>
</li>
<li>
<p><a href="https://github.com/alan-if/alan-by-examples" target="_blank" rel="noopener">github.com/alan-if/alan-by-examples</a>&#8201;&#8212;&#8201;Learn ALAN IF through examples.</p>
</li>
<li>
<p><a href="https://github.com/alan-if/alan-repository-template" target="_blank" rel="noopener">github.com/alan-if/alan-repository-template</a>&#8201;&#8212;&#8201;GitHub repository template for Alan IF projects.</p>
</li>
<li>
<p><a href="https://github.com/alan-if/alan-goodies" target="_blank" rel="noopener">github.com/alan-if/alan-goodies</a>&#8201;&#8212;&#8201;&#8220;Alan Goodies&#8221;, a collection of assorted Alan IF assets.</p>
</li>
<li>
<p><a href="https://github.com/alan-if/alan-xsl-fopub" target="_blank" rel="noopener">github.com/alan-if/alan-xsl-fopub</a>&#8201;&#8212;&#8201;DocBook XSL Template for Alan PDF documentation via Asciidoctor-fopub; includes an XSLTHL Alan definition for Syntax Highlighting.</p>
</li>
</ul>
</div>
</div>
<div class="sect2">
<h3 id="curveship"><a class="anchor" href="#curveship"></a>2.5. Curveship</h3>
<div class="ulist">
<ul>
<li>
<p><a href="https://nickm.com/curveship/" target="_blank" rel="noopener">nickm.com/curveship</a></p>
</li>
</ul>
</div>
</div>
<div class="sect2">
<h3 id="hugo"><a class="anchor" href="#hugo"></a>2.6. Hugo</h3>
<div class="ulist">
<ul>
<li>
<p><a href="https://www.generalcoffee.com/hugo/" target="_blank" rel="noopener">www.generalcoffee.com/hugo</a></p>
</li>
</ul>
</div>
<div class="paragraph">
<p>The Hugo Interactive Fiction Development System (1995-2006), created by Kent Tessman, is a cross-platform, free and open source (BSD-2-Clause license) programming language and set of tools for authoring and playing Interactive Fiction adventures, supporting images, sound and videos.
The latest official Hugo release is v3.1.03 (2005).</p>
</div>
<div class="admonitionblock tip">
<table>
<tr>
<td class="icon">
<i class="fa icon-tip" title="Tip"></i>
</td>
<td class="content">
Suggested GitHub topics:
<a href="https://github.com/topics/hugo-if" target="_blank" rel="noopener"><code>hugo-if</code></a>
</td>
</tr>
</table>
</div>
<div class="paragraph">
<p>For more information, see also:</p>
</div>
<div class="ulist">
<ul>
<li>
<p><a href="http://ifwiki.org/index.php/Hugo" target="_blank" rel="noopener">IFWiki » Hugo</a></p>
</li>
<li>
<p><a href="https://github.com/tajmone/hugo/wiki" target="_blank" rel="noopener">Hugo Wiki</a> (care of Tristano Ajmone).</p>
</li>
<li>
<p><a href="https://notdeadhugo.blogspot.com" target="_blank" rel="noopener">Not Dead Hugo</a>&#8201;&#8212;&#8201;an active blog with precious news on Hugo.</p>
</li>
<li>
<p><a href="https://hugoif.github.io" target="_blank" rel="noopener">hugoif.github.io</a>&#8201;&#8212;&#8201;the &#8220;Hugo Resources&#8221; page, a collection of useful Hugo links.</p>
</li>
</ul>
</div>
<div class="paragraph">
<p>Hugo official documentation, by Kent Tessman:</p>
</div>
<div class="ulist">
<ul>
<li>
<p><a href="https://www.ifarchive.org/if-archive/programming/hugo/manuals/hugo_book.pdf" title="DIRECT DOWNLOAD LINK!" target="_blank" rel="noopener"><em>The Hugo Book</em></a> (PDF)&#8201;&#8212;&#8201;at the IF Archive (<span class="red"><em>direct download</em></span>).</p>
</li>
<li>
<p><a href="https://git.io/hugo-book" target="_blank" rel="noopener"><em>The Hugo Book</em></a> (HTML)&#8201;&#8212;&#8201;New AsciiDoc port and HTML edition, revised with Kent Tessman supervision, Jan. 2020.</p>
</li>
</ul>
</div>
<div class="paragraph">
<p>Tutorials and learning resources:</p>
</div>
<div class="ulist">
<ul>
<li>
<p><a href="http://ifwiki.org/index.php/Category:Hugo_tutorials" target="_blank" rel="noopener">IFWiki » Hugo Tutorials</a></p>
</li>
<li>
<p>Hugo by Example&#8201;&#8212;&#8201;a website of useful resource for those wanting to learn Hugo:</p>
<div class="ulist">
<ul>
<li>
<p><a href="https://hugoif.github.io/hugo-by-example/" target="_blank" rel="noopener">hugoif.github.io/hugo-by-example</a> (2021-)&#8201;&#8212;&#8201;the new <em>Hugo by Example</em> website, now
<a href="https://github.com/hugoif/hugo-by-example" title="View source repository">hosted on GitHub</a>.</p>
</li>
<li>
<p><a href="https://web.archive.org/web/20190113190254/http://hugo.gerynarsabode.org/index.php?title=Main_Page" target="_blank" rel="noopener">hugo.gerynarsabode.org</a> (Wayback Machine, 2019)&#8201;&#8212;&#8201;the original <em>Hugo by Example</em> wiki, by Royce Odle aka «Gerynar».</p>
</li>
</ul>
</div>
</li>
<li>
<p><a href="https://web.archive.org/web/20181114192407/https://www.joltcountry.com/phpBB2/viewforum.php?f=8" target="_blank" rel="noopener">Jolt Country</a> (Wayback Machine, 2018)&#8201;&#8212;&#8201;Unofficial Hugo discussion forum.</p>
</li>
</ul>
</div>
<div class="paragraph">
<p>The Hugo Library, by Kent Tessman:</p>
</div>
<div class="ulist">
<ul>
<li>
<p><a href="https://www.ifarchive.org/indexes/if-archive/programming/hugo/library/" target="_blank" rel="noopener">Hugo Library</a> (v3.1.03.1)&#8201;&#8212;&#8201;at the IF Archive.</p>
</li>
<li>
<p><a href="https://github.com/tajmone/hugo-library" target="_blank" rel="noopener">Hugo Library</a> (v3.1.03.2)&#8201;&#8212;&#8201;on GitHub (care of Tristano Ajmone).</p>
</li>
</ul>
</div>
<div class="paragraph">
<p>Third party libraries for Hugo:</p>
</div>
<div class="ulist">
<ul>
<li>
<p><a href="https://bitbucket.org/roody_yogurt/hugo-code-lab/" target="_blank" rel="noopener">Hugo Code Lab</a>&#8201;&#8212;&#8201;a collection of Hugo libraries by Jonathan Blask.</p>
</li>
<li>
<p><a href="https://www.ifarchive.org/indexes/if-archive/programming/hugo/library/contributions/" target="_blank" rel="noopener">IF Archive</a>&#8201;&#8212;&#8201;library extensions for various purposes contributed by members of the IF community.</p>
</li>
</ul>
</div>
<div class="paragraph">
<p>Editor syntaxes:</p>
</div>
<div class="ulist">
<ul>
<li>
<p><a href="https://www.ifarchive.org/if-archive/programming/editors/Hugo.chl" title="DIRECT DOWNLOAD LINK!" target="_blank" rel="noopener">Hugo ConTEXT</a>&#8201;&#8212;&#8201;Hugo syntax for ConTEXT (<span class="red"><em>direct download</em></span>), by Paul Lee, 2010.</p>
</li>
<li>
<p><a href="https://www.ifarchive.org/if-archive/programming/editors/hugo.stx" title="DIRECT DOWNLOAD LINK!" target="_blank" rel="noopener">Hugo EditPlus2</a>&#8201;&#8212;&#8201;Hugo syntax for EditPlus2 (<span class="red"><em>direct download</em></span>), by Ben Parrish, 2002.</p>
</li>
<li>
<p><a href="https://www.ifarchive.org/if-archive/programming/editors/hugo_emerald.zip" title="DIRECT DOWNLOAD LINK!" target="_blank" rel="noopener">Hugo Emerald</a>&#8201;&#8212;&#8201;Hugo syntax for Emerald (<span class="red"><em>direct download</em></span>), by Jonathan Blask, 2012.</p>
</li>
<li>
<p><a href="https://www.ifarchive.org/if-archive/programming/editors/hugo_kate.zip" title="DIRECT DOWNLOAD LINK!" target="_blank" rel="noopener">Hugo Kate</a>&#8201;&#8212;&#8201;Hugo syntax for Kate (<span class="red"><em>direct download</em></span>), by Jonathan Blask, 2012.</p>
</li>
<li>
<p><a href="https://bitbucket.org/0branch/hugo-mode/" target="_blank" rel="noopener">Hugo mode</a>&#8201;&#8212;&#8201;Hugo mode for Emacs, by Christopher Tate (GPLv2).</p>
</li>
<li>
<p><a href="https://www.ifarchive.org/if-archive/programming/editors/hugo_notepad&#x2B;&#x2B;.zip" title="DIRECT DOWNLOAD LINK!" target="_blank" rel="noopener">Hugo Npp</a>&#8201;&#8212;&#8201;Hugo syntax for NotePad (<span class="red"><em>direct download</em></span>)++, by Jonathan Blask, 2011.</p>
</li>
<li>
<p><a href="https://www.ifarchive.org/if-archive/programming/editors/hugo_SE.zip" title="DIRECT DOWNLOAD LINK!" target="_blank" rel="noopener">Hugo Source Edit</a>&#8201;&#8212;&#8201;Hugo syntax for Source (<span class="red"><em>direct download</em></span>) Edit, by Jonathan Blask, 2012 .</p>
</li>
<li>
<p><a href="https://www.ifarchive.org/if-archive/programming/editors/hugo_textpad.zip" title="DIRECT DOWNLOAD LINK!" target="_blank" rel="noopener">Hugo Textpad</a>&#8201;&#8212;&#8201;Hugo syntax for Textpad (<span class="red"><em>direct download</em></span>),  by Jonathan Blask, 2012.</p>
</li>
<li>
<p><a href="https://www.ifarchive.org/if-archive/programming/editors/hugo_wordfile.txt" title="DIRECT DOWNLOAD LINK!" target="_blank" rel="noopener">Hugo UltraEdit</a>&#8201;&#8212;&#8201;Hugo syntax for UltraEdit (<span class="red"><em>direct download</em></span>), by Gunther Schmidl, 2010.</p>
</li>
<li>
<p><a href="https://bitbucket.org/0branch/hugo-vim/" target="_blank" rel="noopener">Hugo Vim</a>&#8201;&#8212;&#8201;Hugo syntax file for Vim, by Marc Simpson.</p>
</li>
<li>
<p><a href="https://github.com/tajmone/sublime-hugo-if" target="_blank" rel="noopener">Sublime Hugo</a>&#8201;&#8212;&#8201;Hugo for Sublime Text 3, by Tristano Ajmone, 2019 (WIP).</p>
</li>
</ul>
</div>
<div class="paragraph">
<p>Hugo source code:</p>
</div>
<div class="ulist">
<ul>
<li>
<p><a href="https://github.com/tajmone/hugo" target="_blank" rel="noopener">github.com/tajmone/hugo</a> (care of Tristano Ajmone).</p>
</li>
<li>
<p><a href="https://github.com/curiousdannii/hugo" target="_blank" rel="noopener">github.com/curiousdannii/hugo</a> (care of Dannii Willis).</p>
</li>
<li>
<p><a href="https://github.com/0branch/hugo-unix" target="_blank" rel="noopener">github.com/0branch/hugo-unix</a> (care of Marc Simpson).</p>
<div class="ulist">
<ul>
<li>
<p><a href="https://github.com/realnc/homebrew-hugo" target="_blank" rel="noopener">github.com/realnc/homebrew-hugo</a>&#8201;&#8212;&#8201;Homebrew tap for the Unix Hugo CLI tools.</p>
</li>
</ul>
</div>
</li>
<li>
<p><a href="https://github.com/juhana/hugojs" target="_blank" rel="noopener">github.com/juhana/hugojs</a>&#8201;&#8212;&#8201;<strong>HugoJS</strong>, an online Hugo interpreter. Created from Hugo sources trans-compiled to JavaScript via <a href="https://emscripten.org/" target="_blank" rel="noopener">Emscripten</a>.</p>
</li>
</ul>
</div>
<div class="paragraph">
<p>Syntax highlighters supporting Hugo:</p>
</div>
<div class="ulist">
<ul>
<li>
<p><a href="http://www.andre-simon.de/" target="_blank" rel="noopener">Highlight</a> (see: <a href="https://gitlab.com/saalen/highlight/blob/master/langDefs/hugo.lang" target="_blank" rel="noopener"><code>langDefs/hugo.lang</code></a>).</p>
</li>
</ul>
</div>
<div class="paragraph">
<p>To find games created with Hugo:</p>
</div>
<div class="ulist">
<ul>
<li>
<p><a href="https://ifdb.tads.org/search?searchfor=system%3AHugo&amp;searchgo=Search+Games&amp;sortby=&amp;pg=all" target="_blank" rel="noopener">IFDB » Hugo</a>&#8201;&#8212;&#8201;all Hugo games on the Interactive Fiction Database.</p>
</li>
<li>
<p><a href="https://www.ifarchive.org/indexes/if-archive/games/hugo/" target="_blank" rel="noopener">IF Archive » games » Hugo</a></p>
</li>
<li>
<p><a href="http://ifwiki.org/index.php/Category:Hugo_works" target="_blank" rel="noopener">IFWiki » Hugo Works</a></p>
</li>
<li>
<p><a href="http://textadventures.online" target="_blank" rel="noopener">HugoJS</a>&#8201;&#8212;&#8201;a collection of Hugo games playable on-line, in the browser.</p>
</li>
</ul>
</div>
</div>
<div class="sect2">
<h3 id="inform-6"><a class="anchor" href="#inform-6"></a>2.7. Inform 6</h3>
<div class="ulist">
<ul>
<li>
<p><a href="https://inform-fiction.org/" target="_blank" rel="noopener">inform-fiction.org</a></p>
</li>
</ul>
</div>
<div class="admonitionblock tip">
<table>
<tr>
<td class="icon">
<i class="fa icon-tip" title="Tip"></i>
</td>
<td class="content">
Suggested GitHub topics:
<a href="https://github.com/topics/inform" target="_blank" rel="noopener"><code>inform</code></a>
<a href="https://github.com/topics/inform6" target="_blank" rel="noopener"><code>inform6</code></a>
</td>
</tr>
</table>
</div>
<div class="paragraph">
<p>See also:</p>
</div>
<div class="ulist">
<ul>
<li>
<p><a href="#inform-6-2">Inform 6 Free eBooks</a></p>
</li>
<li>
<p><a href="#inform-6-3">Inform 6 Cheat Sheets</a></p>
</li>
</ul>
</div>
</div>
<div class="sect2">
<h3 id="inform-7"><a class="anchor" href="#inform-7"></a>2.8. Inform 7</h3>
<div class="ulist">
<ul>
<li>
<p><a href="http://inform7.com/" target="_blank" rel="noopener">inform7.com</a></p>
</li>
</ul>
</div>
<div class="paragraph">
<p>Based on natural language.</p>
</div>
<div class="admonitionblock tip">
<table>
<tr>
<td class="icon">
<i class="fa icon-tip" title="Tip"></i>
</td>
<td class="content">
Suggested GitHub topics:
<a href="https://github.com/topics/inform" target="_blank" rel="noopener"><code>inform</code></a>
<a href="https://github.com/topics/inform7" target="_blank" rel="noopener"><code>inform7</code></a>
</td>
</tr>
</table>
</div>
<div class="paragraph">
<p>See also:</p>
</div>
<div class="ulist">
<ul>
<li>
<p><a href="#inform-7-3">Inform 7 Commercial Books</a></p>
</li>
<li>
<p><a href="#inform-7-2">Inform 7 Free eBooks</a></p>
</li>
<li>
<p><a href="#inform-7-4">Inform 7 Tutorials</a></p>
</li>
<li>
<p><a href="#inform-7-5">Inform 7 Cheat Sheets</a></p>
</li>
</ul>
</div>
<div class="paragraph">
<p>Online tools:</p>
</div>
<div class="ulist">
<ul>
<li>
<p><a href="https://www.nitku.net/if/thingcreator/" target="_blank" rel="noopener">I7 Thing Creator (I7TC)</a>&#8201;&#8212;&#8201;by Juhana Leinonen. A web form to quickly create i7 objects and reponses; the produced code can then be pasted into the project&#8217;s source.</p>
</li>
</ul>
</div>
</div>
<div class="sect2">
<h3 id="ink"><a class="anchor" href="#ink"></a>2.9. Ink</h3>
<div class="ulist">
<ul>
<li>
<p><a href="https://github.com/inkle/ink" target="_blank" rel="noopener">github.com/inkle/ink</a></p>
</li>
</ul>
</div>
</div>
<div class="sect2">
<h3 id="t-a-b"><a class="anchor" href="#t-a-b"></a>2.10. T.A.B.</h3>
<div class="ulist">
<ul>
<li>
<p><a href="https://tab.thinbasic.com/" target="_blank" rel="noopener">tab.thinbasic.com</a></p>
</li>
</ul>
</div>
<div class="paragraph">
<p>T.A.B. (ThinBASIC Adventure Builder).</p>
</div>
<div class="paragraph">
<p>For more information, see also:</p>
</div>
</div>
<div class="sect2">
<h3 id="tads"><a class="anchor" href="#tads"></a>2.11. TADS</h3>
<div class="ulist">
<ul>
<li>
<p><a href="https://www.tads.org" target="_blank" rel="noopener">www.tads.org</a></p>
</li>
</ul>
</div>
<div class="paragraph">
<p>TADS (Text Adventure Development System).</p>
</div>
<div class="admonitionblock tip">
<table>
<tr>
<td class="icon">
<i class="fa icon-tip" title="Tip"></i>
</td>
<td class="content">
Suggested GitHub topics:
<a href="https://github.com/topics/tads" target="_blank" rel="noopener"><code>tads</code></a>
<a href="https://github.com/topics/tads3" target="_blank" rel="noopener"><code>tads3</code></a>
</td>
</tr>
</table>
</div>
<div class="paragraph">
<p>For more information, see also:</p>
</div>
<div class="ulist">
<ul>
<li>
<p><a href="http://ifwiki.org/index.php/TADS" target="_blank" rel="noopener">IFWiki » TADS</a></p>
</li>
<li>
<p><a href="http://ifwiki.org/index.php/TADS_3" target="_blank" rel="noopener">IFWiki » TADS 3</a></p>
</li>
<li>
<p><a href="https://en.wikipedia.org/wiki/TADS" target="_blank" rel="noopener">Wikipedia » TADS</a></p>
</li>
</ul>
</div>
<div class="paragraph">
<p>TADS sources:</p>
</div>
<div class="ulist">
<ul>
<li>
<p><a href="https://www.ifarchive.org/indexes/if-archive/programming/tads2/source/" target="_blank" rel="noopener">IF Archive » TADS 2 sources</a></p>
</li>
<li>
<p><a href="https://www.ifarchive.org/indexes/if-archive/programming/tads3/source/" target="_blank" rel="noopener">IF Archive » TADS 3 sources</a></p>
</li>
<li>
<p><a href="https://github.com/tajmone/tads-sources" target="_blank" rel="noopener">github.com/tajmone/tads-sources</a></p>
</li>
</ul>
</div>
<div class="paragraph">
<p>See also:</p>
</div>
<div class="ulist">
<ul>
<li>
<p><a href="#mapping-tools-tads">Mapping Tools » TADS</a></p>
</li>
</ul>
</div>
</div>
<div class="sect2">
<h3 id="tuvi"><a class="anchor" href="#tuvi"></a>2.12. Tuvi</h3>
<div class="ulist">
<ul>
<li>
<p><a href="https://github.com/jaywengrow/tuvi" target="_blank" rel="noopener">github.com/jaywengrow/tuvi</a></p>
</li>
</ul>
</div>
</div>
<div class="sect2">
<h3 id="twine"><a class="anchor" href="#twine"></a>2.13. Twine</h3>
<div class="ulist">
<ul>
<li>
<p><a href="https://twinery.org/" target="_blank" rel="noopener">twinery.org</a></p>
</li>
</ul>
</div>
<div class="admonitionblock tip">
<table>
<tr>
<td class="icon">
<i class="fa icon-tip" title="Tip"></i>
</td>
<td class="content">
Suggested GitHub topics:
<a href="https://github.com/topics/twine" target="_blank" rel="noopener"><code>twine</code></a>
<a href="https://github.com/topics/twine2" target="_blank" rel="noopener"><code>twine2</code></a>
</td>
</tr>
</table>
</div>
<div class="paragraph">
<p>See also:</p>
</div>
<div class="ulist">
<ul>
<li>
<p><a href="#twine-2">Twine commercial books</a></p>
</li>
</ul>
</div>
</div>
<div class="sect2">
<h3 id="undum"><a class="anchor" href="#undum"></a>2.14. Undum</h3>
<div class="ulist">
<ul>
<li>
<p><a href="https://idmillington.github.io/undum/" target="_blank" rel="noopener">idmillington.github.io</a></p>
</li>
</ul>
</div>
</div>
<div class="sect2">
<h3 id="varytale"><a class="anchor" href="#varytale"></a>2.15. Varytale</h3>
<div class="ulist">
<ul>
<li>
<p><a href="https://web.archive.org/web/20150913132537/http://varytale.com/books/" target="_blank" rel="noopener">varytale.com/books</a>
(via Wayback Machine, 2015)</p>
</li>
</ul>
</div>
</div>
<div class="sect2">
<h3 id="versu"><a class="anchor" href="#versu"></a>2.16. Versu</h3>
<div class="ulist">
<ul>
<li>
<p><a href="https://versu.com/" target="_blank" rel="noopener">versu.com</a></p>
</li>
</ul>
</div>
</div>
<div class="sect2">
<h3 id="xvan"><a class="anchor" href="#xvan"></a>2.17. XVAN</h3>
<div class="ulist">
<ul>
<li>
<p><a href="https://xvan.nl" target="_blank" rel="noopener">xvan.nl</a></p>
</li>
</ul>
</div>
<div class="paragraph">
<p>XVAN is a an open source (GPLv3) cross-platform parser-based IF authoring tool, by Marnix van den Bos.
It consists of an authoring language, an optional library, a compiler and three types of interpreters: terminal window, Glk-window and GUI.
XVAN is available for Windows, Linux and MacOS, in English and Dutch.</p>
</div>
<div class="paragraph">
<p>See also:</p>
</div>
<div class="ulist">
<ul>
<li>
<p><a href="https://gitlab.com/strandgames/brahman" target="_blank" rel="noopener">gitlab.com/strandgames/brahman</a>&#8201;&#8212;&#8201;<strong>Brahman IF</strong>, the IFI-XVAN back-end for
<a href="https://strandgames.com/blog/ifi-interactive-fiction-interface" target="_blank" rel="noopener">IFI (the Interactive Fiction Interface)</a> by
<a href="https://strandgames.com" title="Strand Games, modern Interactive Fiction" target="_blank" rel="noopener">Strand Games</a>.</p>
</li>
</ul>
</div>
</div>
<div class="sect2">
<h3 id="yarn"><a class="anchor" href="#yarn"></a>2.18. Yarn</h3>
<div class="ulist">
<ul>
<li>
<p><a href="https://github.com/infiniteammoinc/Yarn" target="_blank" rel="noopener">github.com/infiniteammoinc/Yarn</a></p>
</li>
</ul>
</div>
</div>
<div class="sect2">
<h3 id="yarn-spinner"><a class="anchor" href="#yarn-spinner"></a>2.19. Yarn Spinner</h3>
<div class="ulist">
<ul>
<li>
<p><a href="https://github.com/thesecretlab/YarnSpinner" target="_blank" rel="noopener">github.com/thesecretlab/YarnSpinner</a></p>
</li>
</ul>
</div>
</div>
</div>
</div>
<div class="sect1">
<h2 id="if-authoring-tools-in-spanish"><a class="anchor" href="#if-authoring-tools-in-spanish"></a>3. IF Authoring Tools in Spanish</h2>
<div class="sectionbody">
<div class="sect2">
<h3 id="superglús"><a class="anchor" href="#superglús"></a>3.1. Superglús</h3>
<div class="ulist">
<ul>
<li>
<p><a href="https://www.caad.es/superglus/doku.php" target="_blank" rel="noopener">www.caad.es/superglus/doku.php</a></p>
</li>
<li>
<p><a href="https://github.com/Utodev/Superglus" target="_blank" rel="noopener">github.com/Utodev/Superglus</a></p>
</li>
</ul>
</div>
<div class="paragraph">
<p>For more information, see also:</p>
</div>
<div class="ulist">
<ul>
<li>
<p><a href="http://www.ifwiki.org/index.php/Supergl%C3%BAs" target="_blank" rel="noopener">IFWiki » Superglús</a></p>
</li>
<li>
<p><a href="https://es.wikipedia.org/wiki/Supergl%C3%BAs" target="_blank" rel="noopener">Wikipedia (ES) » Superglús</a></p>
</li>
</ul>
</div>
</div>
</div>
</div>
<div class="sect1">
<h2 id="if-authoring-tools-in-italian"><a class="anchor" href="#if-authoring-tools-in-italian"></a>4. IF Authoring Tools in Italian</h2>
<div class="sectionbody">
<div class="sect2">
<h3 id="confabula"><a class="anchor" href="#confabula"></a>4.1. Confabula</h3>
<div class="ulist">
<ul>
<li>
<p><a href="https://github.com/Silvan87/Confabula" target="_blank" rel="noopener">github.com/Silvan87/Confabula</a></p>
</li>
</ul>
</div>
</div>
</div>
</div>
<div class="sect1">
<h2 id="interpreters"><a class="anchor" href="#interpreters"></a>5. Interpreters</h2>
<div class="sectionbody">
<div class="sect2">
<h3 id="cross-platform"><a class="anchor" href="#cross-platform"></a>5.1. Cross Platform</h3>
<div class="ulist">
<ul>
<li>
<p><a href="https://fizmo.spellbreaker.org/" target="_blank" rel="noopener">Fizmo</a>&#8201;&#8212;&#8201;a generic Z-Machine interpreter-development library in plain C, used in various interpreters. Supports Z-code (1-5, 7 and 8).</p>
</li>
<li>
<p><a href="https://davidgriffith.gitlab.io/frotz/" target="_blank" rel="noopener">Frotz</a>&#8201;&#8212;&#8201;for Linux &amp; Mac OS X, supports Z-Machine story files.</p>
</li>
<li>
<p><a href="http://ccxvii.net/gargoyle/" target="_blank" rel="noopener">Gargoyle</a>&#8201;&#8212;&#8201;for MS Windows, Linux &amp; Mac OS X; supports most story file formats by including the following interpreters: Agility, Alan 2 and 3, Frotz (glk port), Glulxe, Hugo, Level 9, Magnetic, Scare, Tads 2/3.</p>
</li>
</ul>
</div>
</div>
<div class="sect2">
<h3 id="macos"><a class="anchor" href="#macos"></a>5.2. macOS</h3>
<div class="ulist">
<ul>
<li>
<p><a href="http://ccxvii.net/spatterlight/" target="_blank" rel="noopener">Spatterlight</a>&#8201;&#8212;&#8201;story files supported: AGT, Adrift, AdvSys, Alan, Glulx, Hugo, Level 9, Magnetic Scrolls, TADS (text-only), Quill, and Z-code (except v6).</p>
</li>
<li>
<p><a href="https://www.logicalshift.co.uk/unix/zoom/" target="_blank" rel="noopener">Zoom</a>&#8201;&#8212;&#8201;supports Z-code, TADS 2/3 and HUGO story files.</p>
</li>
</ul>
</div>
</div>
<div class="sect2">
<h3 id="ms-windows"><a class="anchor" href="#ms-windows"></a>5.3. MS Windows</h3>
<div class="ulist">
<ul>
<li>
<p><a href="http://www.davidkinder.co.uk/glulxe.html" target="_blank" rel="noopener">Windows Glulxe</a></p>
</li>
<li>
<p><a href="http://www.davidkinder.co.uk/frotz.html" target="_blank" rel="noopener">Windows Frotz</a></p>
</li>
</ul>
</div>
</div>
<div class="sect2">
<h3 id="mobile-devices"><a class="anchor" href="#mobile-devices"></a>5.4. Mobile Devices</h3>
<div class="sect3">
<h4 id="andorid"><a class="anchor" href="#andorid"></a>Andorid</h4>
<div class="ulist">
<ul>
<li>
<p><a href="https://bitbucket.org/sussman/twisty" target="_blank" rel="noopener">Twisty</a>&#8201;&#8212;&#8201;supports Z-code and Glulx story files.</p>
</li>
<li>
<p><a href="https://www.onyxbits.de/textfiction" target="_blank" rel="noopener">Text Fiction</a>&#8201;&#8212;&#8201;supports Z-code (3, 5 and 8) story files.</p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="iphone"><a class="anchor" href="#iphone"></a>iPhone</h4>
<div class="ulist">
<ul>
<li>
<p><a href="https://itunes.apple.com/us/app/frotz/id287653015" target="_blank" rel="noopener">iPhone Frotz</a></p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="palmos"><a class="anchor" href="#palmos"></a>PalmOS</h4>
<div class="ulist">
<ul>
<li>
<p><a href="http://zodiacstuff.sourceforge.net/clifrotz.html" target="_blank" rel="noopener">CliFrotz</a></p>
</li>
</ul>
</div>
</div>
</div>
<div class="sect2">
<h3 id="in-browser-players"><a class="anchor" href="#in-browser-players"></a>5.5. In-Browser Players</h3>
<div class="ulist">
<ul>
<li>
<p><a href="https://github.com/curiousdannii/parchment" target="_blank" rel="noopener">Parchment</a>&#8201;&#8212;&#8201;written in JavaScript, supports Z-Machine story files.</p>
</li>
</ul>
</div>
</div>
</div>
</div>
<div class="sect1">
<h2 id="mapping-tools"><a class="anchor" href="#mapping-tools"></a>6. Mapping Tools</h2>
<div class="sectionbody">
<div class="paragraph">
<p>Traditionally, IF maps are represented by boxes connected by lines, representing the various rooms and their directions connections. They are intended to represent movements in the adventure world locations, not a physical representation of its geography&#8201;&#8212;&#8201;but sometimes «realistic» maps are provided with the game feelies, for aesthetic reasons.</p>
</div>
<div class="paragraph">
<p>Mapping tools can be used for either manually drawing maps from scratch, or to automatically build a map by analizying a game session transcript (live or saved). Some tools offer both functionality.</p>
</div>
<div class="paragraph">
<p>Many of the tools presented here are now hosted at the IF-Archive&#8201;&#8212;&#8201;they are old and don&#8217;t have any longer a website of their own. To avoid direct linking to their binary archives, a link to the &#8220;Mapping Tools&#8221; index page at IF-Archive will be provided instead:</p>
</div>
<div class="ulist">
<ul>
<li>
<p><a href="https://www.ifarchive.org/indexes/if-archiveXmapping-tools.html" target="_blank" rel="noopener">The IF Archive » Mapping Tools</a></p>
</li>
</ul>
</div>
<div class="sect2">
<h3 id="cross-platform-2"><a class="anchor" href="#cross-platform-2"></a>6.1. Cross Platform</h3>
<div class="ulist">
<ul>
<li>
<p><a href="https://bitbucket.org/zondo/ifm" target="_blank" rel="noopener">IFM</a> (Interactive Fiction Mapper, 1998–2014)&#8201;&#8212;&#8201;IFM is both a language for keeping track of gameplay progress and a command line tool (for Windows and Linux) capable of representing the collected map-data in different output formats (PostScript, Fig, ASCII text, and others) and offering many other features, including automapping.
Windows executables can be downloaded from the <a href="https://www.ifarchive.org/indexes/if-archiveXmapping-tools.html" target="_blank" rel="noopener">IF Archive</a>.
Linux users can build IFM from the Bitbucket sources via GNU <code>make</code>.
(<a href="http://ifm.readthedocs.io/en/latest/contents.html" target="_blank" rel="noopener">Online Manual</a> | <a href="https://bitbucket.org/zondo/ifm" target="_blank" rel="noopener">Bitbucket</a> | <a href="http://www.ifwiki.org/index.php/IFM" target="_blank" rel="noopener">IFWiki</a>)</p>
</li>
<li>
<p><a href="https://rubygems.org/gems/ifmapper/versions/1.3.1" target="_blank" rel="noopener">IFMapper</a>&#8201;&#8212;&#8201;A map drawing tool, written in Ruby, with lots of features, including automapping. Can read and save IFM files and Inform/TADS3 source code files. Exports to PDF. (<a href="http://ggarra13.github.io/ifmapper/en/start.html" target="_blank" rel="noopener">Online Manual</a> | <a href="https://github.com/ggarra13/ifmapper" target="_blank" rel="noopener">GitHub</a>)</p>
</li>
<li>
<p><a href="https://www.ifarchive.org/if-archive/mapping-tools/SVGmaps.zip"><code>SVGmaps.zip</code></a> (2008)&#8201;&#8212;&#8201;A JavaScript framework for producing IF maps using the standard Scalable Vector Graphics (SVG) language.</p>
</li>
</ul>
</div>
</div>
<div class="sect2">
<h3 id="macos-2"><a class="anchor" href="#macos-2"></a>6.2. macOS</h3>
<div class="ulist">
<ul>
<li>
<p>Cocoa Mapre (2004)&#8201;&#8212;&#8201;(<a href="https://www.ifarchive.org/if-archive/mapping-tools/cocoa_mapre0.6.7.dmg"><code>cocoa_mapre0.6.7.dmg</code></a>) A tool for generating maps of Multi-User Dungeons on Mac OS X.</p>
</li>
</ul>
</div>
</div>
<div class="sect2">
<h3 id="ms-windows-2"><a class="anchor" href="#ms-windows-2"></a>6.3. MS Windows</h3>
<div class="ulist">
<ul>
<li>
<p><a href="http://autorealm.sourceforge.net/" target="_blank" rel="noopener">AutoREALM</a> (2006)&#8201;&#8212;&#8201;A vector-based map drawing software (FOSS) designed for RPGs. Allows the creation of detailed full-color maps; ideal for the creation of elegant game maps where «room boxes» are superimposed on a realistic up-to-scale representation of the game world.</p>
</li>
<li>
<p><a href="https://secure.profantasy.com/products/cc3-plus.asp" target="_blank" rel="noopener">Campaign Cartographer</a>&#8201;&#8212;&#8201;A commercial tool for drawing fantasy-style terrain maps&#8201;&#8212;&#8201;not the classic rooms/directions-based diagram IF maps, but ancient-looking «realistic» full-color maps, with villages, lakes, sea, forests. Execellent for creating feelies maps.</p>
</li>
<li>
<p><a href="https://www.ifarchive.org/indexes/if-archiveXmapping-tools.html" target="_blank" rel="noopener">Frobot Magic Adventure Mapper</a> (1998)&#8201;&#8212;&#8201;Automapping tool for Windows 95.</p>
</li>
<li>
<p>GUEmap&#8201;&#8212;&#8201;Map drawing tool, can also generate directions for moving around the map. <a href="https://www.cjmweb.net/GUEmap/download" target="_blank" rel="noopener">GUEmap v1</a> (1998–1999) is Sharaware, <a href="https://www.cjmweb.net/GUEmap/develop" target="_blank" rel="noopener">GUEmap v2</a> (1998–2007) is now free and open source. Runs on Windows 95/98 or NT 4.0.</p>
</li>
<li>
<p><a href="https://www.ifarchive.org/indexes/if-archiveXmapping-tools.html" target="_blank" rel="noopener">Informapper</a> (1996)&#8201;&#8212;&#8201;A map drawing program for Windows, Spanish only user interface. Can export as a skeleton file for SINTAC. Can&#8217;t execute on modern versions of Windows.</p>
</li>
<li>
<p><a href="https://www.ifarchive.org/indexes/if-archiveXmapping-tools.html" target="_blank" rel="noopener">Map Maker</a> (1999)&#8201;&#8212;&#8201;A Windows 95/98/NT world-building tool for visually designing maps to be converted as AGT, AGX, Hugo and TADS source code. Can still be executed under Windows 10.</p>
</li>
<li>
<p><a href="https://www.ifarchive.org/indexes/if-archiveXmapping-tools.html" target="_blank" rel="noopener">The Mapper</a> (1994)&#8201;&#8212;&#8201;Automapping tool&#8201;&#8212;&#8201;comes as a <code>.COM</code> executable format. Can&#8217;t execute on modern versions of Windows.</p>
</li>
<li>
<p><a href="https://www.trizbort.com//" target="_blank" rel="noopener">Trizbort</a> (2010-today)&#8201;&#8212;&#8201;For drawing Infocom-style maps. Automapping feature. Saves in XML, exports to PDF or PNG. Actively developed.</p>
</li>
</ul>
</div>
</div>
<div class="sect2">
<h3 id="linuxnix"><a class="anchor" href="#linuxnix"></a>6.4. Linux/*nix</h3>
<div class="ulist">
<ul>
<li>
<p><a href="https://www.ifarchive.org/indexes/if-archiveXmapping-tools.html" target="_blank" rel="noopener">Adventure Map Utility</a> (1994)&#8201;&#8212;&#8201;A shell script that implements a domain-specific language for creating printable PostScript maps from plaintext input files.</p>
</li>
<li>
<p><a href="https://www.ifarchive.org/if-archive/mapping-tools/asciimapper" target="_blank" rel="noopener">asciimapper</a> (2005)&#8201;&#8212;&#8201;A Perl script to create IFM maps from ASCII art maps. Intended as an easy way to draw a map and have it converted to IFM format.</p>
</li>
<li>
<p><a href="https://www.ifarchive.org/indexes/if-archiveXmapping-tools.html" target="_blank" rel="noopener">ifm2i7</a> (2008)&#8201;&#8212;&#8201;A Perl program to convert maps in IFM format to Inform 7 source code.</p>
</li>
<li>
<p><a href="https://www.ifarchive.org/if-archive/mapping-tools/informap.perl" target="_blank" rel="noopener">informap</a> (1999)&#8201;&#8212;&#8201;A perl script that draws maps out of Inform source code.</p>
</li>
</ul>
</div>
</div>
<div class="sect2">
<h3 id="mobile-devices-2"><a class="anchor" href="#mobile-devices-2"></a>6.5. Mobile Devices</h3>
<div class="sect3">
<h4 id="palmos-2"><a class="anchor" href="#palmos-2"></a>PalmOS</h4>
<div class="ulist">
<ul>
<li>
<p><a href="https://www.ifarchive.org/indexes/if-archiveXmapping-tools.html" target="_blank" rel="noopener">IFmapper</a> (2001)</p>
</li>
</ul>
</div>
</div>
</div>
<div class="sect2">
<h3 id="if-system-specific-mapping-tools"><a class="anchor" href="#if-system-specific-mapping-tools"></a>6.6. IF System-Specific Mapping Tools</h3>
<div class="paragraph">
<p>Here&#8217;s a list of mapping tools or libraries which are designed for specific IF systems.</p>
</div>
<div class="sect3">
<h4 id="mapping-tools-tads"><a class="anchor" href="#mapping-tools-tads"></a>TADS</h4>
<div class="ulist">
<ul>
<li>
<p><a href="https://github.com/toerob/t3cartographer" target="_blank" rel="noopener">Tads3 Cartographer library</a> (2021–)&#8201;&#8212;&#8201;A library for the TADS&#160;3 authoring system that creates an in-game graphical map in either ASCII, SVG, Graphviz DOT or HTML.</p>
</li>
</ul>
</div>
</div>
</div>
</div>
</div>
<div class="sect1">
<h2 id="standards-and-specifications"><a class="anchor" href="#standards-and-specifications"></a>7. Standards and Specifications</h2>
<div class="sectionbody">
<div class="ulist">
<ul>
<li>
<p><a href="#files-extensions-and-formats">Files Extensions and Formats</a></p>
</li>
<li>
<p><a href="#story-files-by-extensions">Story Files by Extensions</a></p>
</li>
<li>
<p><a href="#source-files-by-extensions">Source Files by Extensions</a></p>
</li>
<li>
<p><a href="#other-if-file-extensions">Other IF File Extensions</a></p>
</li>
<li>
<p><a href="#virtual-machines">Virtual Machines</a></p>
</li>
</ul>
</div>
<div class="sect2">
<h3 id="files-extensions-and-formats"><a class="anchor" href="#files-extensions-and-formats"></a>7.1. Files Extensions and Formats</h3>
<div class="paragraph">
<p>For a full list of IF story files extensions, see:</p>
</div>
<div class="ulist">
<ul>
<li>
<p><a href="http://www.ifwiki.org/index.php/List_of_file_extensions" target="_blank" rel="noopener">IFWiki » List of file extensions</a></p>
</li>
<li>
<p><a href="http://ifdb.tads.org/fileformat" target="_blank" rel="noopener">IFDB » File Formats</a></p>
</li>
</ul>
</div>
</div>
<div class="sect2">
<h3 id="story-files-by-extensions"><a class="anchor" href="#story-files-by-extensions"></a>7.2. Story Files by Extensions</h3>
<div class="paragraph">
<p>IF story files are distributed with different file extensions, depending on the IF authoring system used to create them and/or the output format the story has been compiled/converted to (in case of authoring systems that support multiple output formats, like Inform7, or when story files are converted from an old format to a newer one).</p>
</div>
<div class="paragraph">
<p>The following table resumes the most common story file extensions.</p>
</div>
<table class="tableblock frame-all grid-all stretch">
<colgroup>
<col style="width: 10%;">
<col style="width: 90%;">
</colgroup>
<thead>
<tr>
<th class="tableblock halign-left valign-top">ext</th>
<th class="tableblock halign-left valign-top">format</th>
</tr>
</thead>
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>.a3c</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><a href="#alan">Alan 3</a> story file.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>.asl</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Quest source code and story file.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>.blb</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Blorb wrapper, usually containing a story file.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>.cas</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Compressed Quest story file.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>.floydc</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Floyd story file.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>.gam</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><a href="#tads">TADS 2</a> story file.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>.gblorb</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><a href="#glulx">Glulx</a> story file in a Blorb wrapper.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>.glb</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><a href="#glulx">Glulx</a> story file in a Blorb wrapper.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>.hex</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><a href="#hugo">Hugo</a> story file.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>.nx</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Node-X story file.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>.t3</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><a href="#tads">TADS 3</a> story file.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>.t3x</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><a href="#tads">TADS 3</a> story file.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>.taf</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><a href="#adrift">ADRIFT</a> story file.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>.tag</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">T.A.G. story file.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>.tws</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><a href="#twine">Twine</a> story file.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>.ulx</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><a href="#glulx">Glulx</a> story file.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>.z1</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Z-machine version 1 story file.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>.z2</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Z-machine version 2 story file.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>.z3</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Z-machine version 3 story file.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>.z4</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Z-machine version 4 story file.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>.z5</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Z-machine version 5 story file.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>.z6</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Z-machine version 6 story file.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>.z7</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Z-machine version 7 story file.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>.z8</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Z-machine version 8 story file.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>.zblorb</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Z-machine story file in a Blorb wrapper.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>.zlb</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Z-machine story file in a Blorb wrapper.</p></td>
</tr>
</tbody>
</table>
</div>
<div class="sect2">
<h3 id="source-files-by-extensions"><a class="anchor" href="#source-files-by-extensions"></a>7.3. Source Files by Extensions</h3>
<div class="paragraph">
<p>The following table resumes some common extensions used by IF authoring systems as source, headers or resource files. In some IF authoring systems, the source code file and the story file distributed for playing are one and the same.</p>
</div>
<table class="tableblock frame-all grid-all stretch">
<colgroup>
<col style="width: 10%;">
<col style="width: 90%;">
</colgroup>
<thead>
<tr>
<th class="tableblock halign-left valign-top">ext</th>
<th class="tableblock halign-left valign-top">format</th>
</tr>
</thead>
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>.a3r</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><a href="#alan">Alan 3</a> multimedia resources file (same filename as its storyfile).</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>.acd</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><a href="#alan">Alan 2</a> source code file.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>.alan</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><a href="#alan">Alan 3</a> source file.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>.alr</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><a href="#adrift">ADRIFT</a> Language Resource file.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>.asl</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Quest source code and story file.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>.i6t</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><a href="#inform-6">Inform 6</a> template used by <a href="#inform-7">Inform 7</a> compiler.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>.i7x</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><a href="#inform-7">Inform 7</a> extension source code file.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>.inf</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><a href="#inform-6">Inform 6</a> source code file.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>.inform</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><a href="#inform-7">Inform 7</a> project folder.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>.jacl</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">JACL source code file.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>.ni</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><a href="#inform-7">Inform 7</a> source code.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>.t</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><a href="#tads">TADS</a> source code file.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>.tab</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><a href="#t-a-b">T.A.B.</a> game datafile</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>.zil</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">ZIL source code.</p></td>
</tr>
</tbody>
</table>
</div>
<div class="sect2">
<h3 id="other-if-file-extensions"><a class="anchor" href="#other-if-file-extensions"></a>7.4. Other IF File Extensions</h3>
<div class="paragraph">
<p>The following table resumes some other common file extensions related to IF that don&#8217;t belong to any of the previous categories.</p>
</div>
<table class="tableblock frame-all grid-all stretch">
<colgroup>
<col style="width: 10%;">
<col style="width: 90%;">
</colgroup>
<thead>
<tr>
<th class="tableblock halign-left valign-top">ext</th>
<th class="tableblock halign-left valign-top">format</th>
</tr>
</thead>
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>.sav</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Saved game file.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>.scr</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Transcript of a Z-Code gameplay.</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>.t3v</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><a href="#tads">TADS 3</a> saved game file.</p></td>
</tr>
</tbody>
</table>
</div>
<div class="sect2">
<h3 id="virtual-machines"><a class="anchor" href="#virtual-machines"></a>7.5. Virtual Machines</h3>
<div class="paragraph">
<p>See also:</p>
</div>
<div class="ulist">
<ul>
<li>
<p><a href="https://github.com/iftechfoundation/ifarchive-if-specs" class="bare" target="_blank" rel="noopener">https://github.com/iftechfoundation/ifarchive-if-specs</a></p>
</li>
</ul>
</div>
<div class="sect3">
<h4 id="z-machine"><a class="anchor" href="#z-machine"></a>Z-machine</h4>
<div class="paragraph">
<p>The Z-machine was the virtual machine used by Infocom for their text adventures (the &#8216;Z&#8217; stands for &#8216;Zork&#8217;).
Originally developed in 1979 by Joel Berez and Marc Blank, it was later on decoded and reimplemented in the mid-1990s as an open standard by IF fans wishing to revive the genre and play the original Infocom adventures.</p>
</div>
<div class="paragraph">
<p>There are have been several variations of the Z-machine standard (z1 to z6), and present day IF interpreters support all of them for the sake of backward compatiblity.
The Inform compiler supports creating adventures in Z-machine format.
The Z-machine is a 16 bit virtual machine.</p>
</div>
<div class="ulist">
<ul>
<li>
<p><a href="https://www.inform-fiction.org/zmachine/standards/index.html" target="_blank" rel="noopener">Z-machine Specs at Inform website</a></p>
</li>
<li>
<p><a href="https://en.wikipedia.org/wiki/Z-machine" target="_blank" rel="noopener">Z-machine at Wikipedia</a></p>
</li>
<li>
<p><a href="https://github.com/jeffnyman/zmachine" target="_blank" rel="noopener">github.com/jeffnyman/zmachine</a>&#8201;&#8212;&#8201;Jeff Nyman&#8217;s collection of documents on the Z-Machine.</p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="glulx"><a class="anchor" href="#glulx"></a>Glulx</h4>
<div class="paragraph">
<p>Glulx is A 32-Bit Virtual Machine for IF, created by Andrew Plotkin.</p>
</div>
<div class="ulist">
<ul>
<li>
<p><a href="https://www.eblong.com/zarf/glulx/" target="_blank" rel="noopener">Glulx homepage</a></p>
</li>
<li>
<p><a href="http://www.ifwiki.org/index.php/Glulx" target="_blank" rel="noopener">Glulx at IFWiki</a></p>
</li>
<li>
<p><a href="https://en.wikipedia.org/wiki/Glulx" target="_blank" rel="noopener">Glulx at Wikipedia</a></p>
</li>
<li>
<p><a href="https://www.ifarchive.org/indexes/if-archiveXprogrammingXglulx.html" target="_blank" rel="noopener">IF Archive » Programming » Glulx</a></p>
</li>
</ul>
</div>
<div class="sect4">
<h5 id="glulx-vm-interpreters"><a class="anchor" href="#glulx-vm-interpreters"></a>Glulx VM interpreters</h5>
<div class="ulist">
<ul>
<li>
<p><a href="https://github.com/erkyrath/glulxe" target="_blank" rel="noopener">Glulxe</a>&#8201;&#8212;&#8201;by Andrew Plotkin; written in C, hosted on GitHub.</p>
</li>
</ul>
</div>
<div class="paragraph">
<p>More Glulx interpreters are listed at the IF Archive dedicated section:</p>
</div>
<div class="ulist">
<ul>
<li>
<p><a href="https://www.ifarchive.org/indexes/if-archiveXprogrammingXglulxXinterpretersXglulxe.html" target="_blank" rel="noopener">IF Archive » Programming » Glulx » Interpreters</a></p>
</li>
</ul>
</div>
</div>
<div class="sect4">
<h5 id="glulx-manuals-and-references"><a class="anchor" href="#glulx-manuals-and-references"></a>Glulx Manuals and References</h5>
<div class="ulist">
<ul>
<li>
<p><a href="https://www.eblong.com/zarf/glulx/inform-guide.txt" target="_blank" rel="noopener">The Game Author&#8217;s Guide to Glulx Inform</a></p>
</li>
<li>
<p><a href="https://www.eblong.com/zarf/glulx/technical.txt" target="_blank" rel="noopener">The Glulx Inform Technical Reference</a></p>
</li>
</ul>
</div>
</div>
<div class="sect4">
<h5 id="glulx-tools"><a class="anchor" href="#glulx-tools"></a>Glulx Tools</h5>
<div class="paragraph">
<p>More Glulx tools are listed at the IF Archive dedicated section:</p>
</div>
<div class="ulist">
<ul>
<li>
<p><a href="https://www.ifarchive.org/indexes/if-archiveXprogrammingXglulxXtools.html" target="_blank" rel="noopener">IF Archive » Programming » Programming » Glulx » Tools</a></p>
</li>
</ul>
</div>
</div>
</div>
<div class="sect3">
<h4 id="t3-vm"><a class="anchor" href="#t3-vm"></a>T3 VM</h4>
<div class="paragraph">
<p>The T3 VM is the TADS 3 Virtual Machine, replacing the TADS 2 VM.</p>
</div>
<div class="ulist">
<ul>
<li>
<p><a href="http://www.tads.org/t3doc/doc/techman/t3spec.htm" target="_blank" rel="noopener">&#8220;T3 VM Technical Documentation&#8221; in <em>TADS 3 Technical Manual</em></a></p>
</li>
<li>
<p><a href="http://www.tads.org/t3spec/intro.htm" target="_blank" rel="noopener">T3 VM specs at TADS website</a></p>
</li>
</ul>
</div>
</div>
</div>
<div class="sect2">
<h3 id="if-standards"><a class="anchor" href="#if-standards"></a>7.6. IF Standards</h3>
<div class="paragraph">
<p>Various standards shared by Interactive Fiction story files or authoring systems.</p>
</div>
<div class="paragraph">
<p>See also:</p>
</div>
<div class="ulist">
<ul>
<li>
<p><a href="https://github.com/iftechfoundation/ifarchive-if-specs" class="bare" target="_blank" rel="noopener">https://github.com/iftechfoundation/ifarchive-if-specs</a></p>
</li>
</ul>
</div>
<div class="sect3">
<h4 id="blorb"><a class="anchor" href="#blorb"></a>Blorb</h4>
<div class="quoteblock">
<blockquote>
<div class="paragraph">
<p>[Blorb is] a formal specification for a common format for storing resources associated with an interactive fiction game file.
Resources are data which the game can invoke, such as sounds and pictures.
In addition, the executable game file may itself be a resource in a resource file. This is a convenient way to package a game and all its resources together in one file.</p>
</div>
</blockquote>
<div class="attribution">
&#8212; Blorb Specification
</div>
</div>
<div class="ulist">
<ul>
<li>
<p><a href="https://eblong.com/zarf/blorb/" target="_blank" rel="noopener">Blorb homepage</a>&#8201;&#8212;&#8201;Blorb official specs and tools by Andrew Plotkin.</p>
</li>
<li>
<p><a href="https://inform-fiction.org/zmachine/standards/blorb/index.html" target="_blank" rel="noopener"><em>The Blorb Resources Format</em></a>&#8201;&#8212;&#8201;by Graham Nelson.</p>
</li>
<li>
<p><a href="https://github.com/tajmone/if-specs/tree/master/blorb" target="_blank" rel="noopener">AsciiDoc port of the Blorb Specification</a>
(<a href="https://htmlpreview.github.io/?https://github.com/tajmone/if-specs/blob/master/blorb/Blorb-Specification.html" target="_blank" rel="noopener">Live HTML Preview</a>)</p>
</li>
<li>
<p><a href="https://www.jczorkmid.net/V6Lib/blorb/" class="bare" target="_blank" rel="noopener">https://www.jczorkmid.net/V6Lib/blorb/</a>&#8201;&#8212;&#8201;Jason Penney&#8217;s Blorb files for Infocom&#8217;s V6 Games.</p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="the-treaty-of-babel"><a class="anchor" href="#the-treaty-of-babel"></a>The Treaty of Babel</h4>
<div class="quoteblock">
<blockquote>
<div class="paragraph">
<p>The Treaty is an agreement between active design systems, the IF-archive and other interested parties. It provides for:</p>
</div>
<div class="ulist">
<ul>
<li>
<p>ISBN-like unique ID numbers for story files, old and new, produced by commercial or non-commercial compilers living and dead;</p>
</li>
<li>
<p>a standard format for cover art and bibliographic data;</p>
</li>
<li>
<p>a web server able to provide these for a given ID number;</p>
</li>
<li>
<p>a command-line tool able to identify and extract data from story files in any format;</p>
</li>
<li>
<p>reference software providing a format-neutral API for reading story files, and removing &#8220;wrappers&#8221;.</p>
</li>
</ul>
</div>
<div class="paragraph">
<p>The aim of the treaty, and of the Babel software, is to make it much easier to write new tools for players in which the distinction of which design system created which story file is much less visible.</p>
</div>
</blockquote>
<div class="attribution">
&#8212; The Treaty of Babel
</div>
</div>
<div class="ulist">
<ul>
<li>
<p><a href="https://babel.ifarchive.org" class="bare" target="_blank" rel="noopener">https://babel.ifarchive.org</a></p>
</li>
<li>
<p><a href="https://groups.google.com/g/babel-if" class="bare" target="_blank" rel="noopener">https://groups.google.com/g/babel-if</a>&#8201;&#8212;&#8201;Babel-IF mailing list.</p>
</li>
<li>
<p><a href="https://github.com/iftechfoundation/babel-tool" class="bare" target="_blank" rel="noopener">https://github.com/iftechfoundation/babel-tool</a>&#8201;&#8212;&#8201;source code of the Babel tools suite.</p>
</li>
</ul>
</div>
</div>
</div>
</div>
</div>
<div class="sect1">
<h2 id="collections"><a class="anchor" href="#collections"></a>8. Collections</h2>
<div class="sectionbody">
<div class="ulist">
<ul>
<li>
<p><a href="http://www.ifdb.tads.org" target="_blank" rel="noopener">Interaction Fiction Database</a></p>
</li>
<li>
<p><a href="https://www.ifarchive.org" target="_blank" rel="noopener">The Interaction Fiction Archive</a></p>
</li>
</ul>
</div>
</div>
</div>
<div class="sect1">
<h2 id="blogs"><a class="anchor" href="#blogs"></a>9. Blogs</h2>
<div class="sectionbody">
<div class="ulist">
<ul>
<li>
<p><a href="https://planet-if.com" target="_blank" rel="noopener">Planet IF</a>&#8201;&#8212;&#8201;Aggregation of posts from 60+ IF blogs</p>
</li>
<li>
<p><a href="http://storycade.com" target="_blank" rel="noopener">Storycade</a></p>
</li>
<li>
<p><a href="https://emshort.wordpress.com" target="_blank" rel="noopener">Emily Short&#8217;s Interactive Storytelling</a></p>
</li>
<li>
<p><a href="https://inkypath.wordpress.com/" target="_blank" rel="noopener">Inky Path</a>&#8201;&#8212;&#8201;Discussion of IF from a literary perspective. Discontinued but the archive is still accessible.</p>
</li>
<li>
<p><a href="http://brasslantern.org/" target="_blank" rel="noopener">Brass Lantern</a></p>
</li>
</ul>
</div>
</div>
</div>
<div class="sect1">
<h2 id="competitions-awards"><a class="anchor" href="#competitions-awards"></a>10. Competitions &amp; Awards</h2>
<div class="sectionbody">
<div class="paragraph">
<p>For more info, see:</p>
</div>
<div class="ulist">
<ul>
<li>
<p><a href="http://www.ifwiki.org/index.php/Category:Competitions" target="_blank" rel="noopener">IFWiki » Competitions</a></p>
</li>
<li>
<p><a href="https://wiki.caad.es/Categor%C3%ADa:Competiciones" target="_blank" rel="noopener">WikiCAAD (ES) » Competiciones</a></p>
</li>
</ul>
</div>
<div class="sect2">
<h3 id="annual-competitions"><a class="anchor" href="#annual-competitions"></a>10.1. Annual Competitions</h3>
<div class="ulist">
<ul>
<li>
<p><a href="https://www.ifcomp.org" target="_blank" rel="noopener">The Interactive Fiction Competition (IFComp)</a>&#8201;&#8212;&#8201;since 1995.</p>
</li>
<li>
<p><a href="https://springthing.net" target="_blank" rel="noopener">Spring Thing Festival of Interactive Fiction</a>&#8201;&#8212;&#8201;since 2002.</p>
</li>
</ul>
</div>
</div>
<div class="sect2">
<h3 id="annual-awards"><a class="anchor" href="#annual-awards"></a>10.2. Annual Awards</h3>
<div class="ulist">
<ul>
<li>
<p><a href="https://xyzzyawards.org/" target="_blank" rel="noopener">The XYZZY Awards</a>&#8201;&#8212;&#8201;since 1996.</p>
</li>
</ul>
</div>
</div>
<div class="sect2">
<h3 id="others"><a class="anchor" href="#others"></a>10.3. Others</h3>
<div class="ulist">
<ul>
<li>
<p><a href="https://itch.io/jam/talp" target="_blank" rel="noopener">https://itch.io/jam/talp</a>&#8201;&#8212;&#8201;various text adventure competitions, usually themed, suitable for children with no prior experience; hosted by <a href="#adventuron">Adventuron</a>.</p>
</li>
</ul>
</div>
</div>
</div>
</div>
<div class="sect1">
<h2 id="if-learning-resources"><a class="anchor" href="#if-learning-resources"></a>11. IF Learning Resources</h2>
<div class="sectionbody">
<div class="ulist">
<ul>
<li>
<p><a href="#magazines">Magazines</a></p>
</li>
<li>
<p><a href="#free-ebooks">Free eBooks</a></p>
</li>
<li>
<p><a href="#commercial-books">Commercial Books</a></p>
</li>
<li>
<p><a href="#documentaries">Documentaries</a></p>
</li>
<li>
<p><a href="#tutorials">Tutorials</a></p>
</li>
<li>
<p><a href="#cheat-sheets-and-reference-docs">Cheat Sheets and Reference Docs</a></p>
</li>
</ul>
</div>
<div class="paragraph">
<p>For more learning resources, see also:</p>
</div>
<div class="ulist">
<ul>
<li>
<p><a href="https://emshort.blog/how-to-play/writing-if/books-and-other-resources/" target="_blank" rel="noopener">Emily Short&#8217;s Blog » Books and Other Resources</a></p>
</li>
</ul>
</div>
<div class="sect2">
<h3 id="magazines"><a class="anchor" href="#magazines"></a>11.1. Magazines</h3>
<div class="paragraph">
<p>See also:</p>
</div>
<div class="ulist">
<ul>
<li>
<p><a href="https://www.ifarchive.org/indexes/if-archiveXmagazines.html" target="_blank" rel="noopener">IF Archive section on magazines</a></p>
</li>
</ul>
</div>
<div class="sect3">
<h4 id="discoverers-digest"><a class="anchor" href="#discoverers-digest"></a>Discoverer&#8217;s Digest</h4>
<div class="paragraph">
<p>The <em>Discoverer&#8217;s Digest</em> focuses on Interactive Fiction&#8217;s philosophy, authorship, and exploring the possibilities of the medium.&#8201;&#8212;&#8201;everything from artistic mapping techniques to hooking your IF through a browser-based GPS system for IF in the real world!</p>
</div>
<div class="ulist">
<ul>
<li>
<p><a href="https://web.archive.org/web/20181105181239/http://discdigest.xyz/" target="_blank" rel="noopener">http://discdigest.xyz</a> (Wayback Machine, 2018)</p>
</li>
<li>
<p><a href="https://www.ifarchive.org/indexes/if-archiveXmagazinesXDiscoverersDigest.html" target="_blank" rel="noopener"><em>Discoverer&#8217;s Digest</em> issues at IF Archive</a></p>
</li>
</ul>
</div>
</div>
</div>
<div class="sect2">
<h3 id="free-ebooks"><a class="anchor" href="#free-ebooks"></a>11.2. Free eBooks</h3>
<div class="sect3">
<h4 id="if-history"><a class="anchor" href="#if-history"></a>IF History</h4>
<div class="ulist">
<ul>
<li>
<p><a href="http://maher.filfre.net/if-book/" target="_blank" rel="noopener">Let&#8217;s Tell a Story Together</a>&#8201;&#8212;&#8201;by Jimmy Maher, 2006. Readable online or downloadable in ePub or Mobipocket.</p>
</li>
<li>
<p><a href="https://www.filfre.net/the-digital-antiquarian-e-book-library/" target="_blank" rel="noopener">The Digital Antiquarian</a>&#8201;&#8212;&#8201;Jimmy Maher&#8217;s blog articles downloadble as yearly volumes, in ePub or Mobipocket.</p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="if-theory"><a class="anchor" href="#if-theory"></a>IF Theory</h4>
<div class="ulist">
<ul>
<li>
<p><a href="http://davidfisher.info/if/gems/" target="_blank" rel="noopener">IF Gems</a>&#8201;&#8212;&#8201;A selection of quotes from reviews of the <a href="https://www.ifcomp.org/" target="_blank" rel="noopener">annual Interactive Fiction competition</a> (1995–2005), compiled by David Fisher; 183pp (PDF).</p>
</li>
<li>
<p><a href="https://www.lulu.com/shop/kevin-jackson-mead-and-j-robinson-wheeler/if-theory-reader/ebook/product-17551190.html" target="_blank" rel="noopener">IF Theory Reader</a>&#8201;&#8212;&#8201;by Kevin Jackson-Mead &amp; J. Robinson Wheeler, 2011; 438pp (PDF). Also available for purchase as paperback and <a href="https://www.amazon.com/IF-Theory-Reader-Adventure-beyond-ebook/dp/B00JHCSU0Y/ref=sr_1_1?s=digital-text&amp;ie=UTF8&amp;qid=1522580829&amp;sr=1-1" target="_blank" rel="noopener">Kindle edition</a>.</p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="inform-6-2"><a class="anchor" href="#inform-6-2"></a>Inform 6</h4>
<div class="ulist">
<ul>
<li>
<p><a href="https://inform-fiction.org/manual/about_ibg.html" target="_blank" rel="noopener">The Inform Beginner&#8217;s Guide</a>&#8201;&#8212;&#8201;by Roger Firth and Sonja Kesserich, 2004; 284pp (PDF). Also available as paperback. Translations in other languages:</p>
<div class="ulist">
<ul>
<li>
<p>Italian » <a href="https://www.lulu.com/shop/autori-vari/guida-a-inform-per-principianti/ebook/product-17551755.html" target="_blank" rel="noopener">Guida a Inform per Principianti</a></p>
</li>
</ul>
</div>
</li>
<li>
<p><a href="https://inform-fiction.org/manual/about_dm4.html" target="_blank" rel="noopener">The Inform Designer&#8217;s Manual</a> (DM4)&#8201;&#8212;&#8201;by Graham Nelson, 2001; 572pp. Also available as paperback and <a href="https://ifarchive.org/if-archive/infocom/compilers/inform6/manuals/designers_manual_4.chm">Microsoft CHM eBook</a>.</p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="inform-7-2"><a class="anchor" href="#inform-7-2"></a>Inform 7</h4>
<div class="ulist">
<ul>
<li>
<p><a href="https://www.musicwords.net/if/i7hb.htm" target="_blank" rel="noopener">The Inform 7 Handbook</a>&#8201;&#8212;&#8201;by Jim Aikin, 2015; 518pp.</p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="paw"><a class="anchor" href="#paw"></a>PAW</h4>
<div class="ulist">
<ul>
<li>
<p><a href="https://gilsoftpawreservoir.wordpress.com/2013/07/29/feature-the-paw-programming-bible/" target="_blank" rel="noopener">The PAW Programming Bible</a>&#8201;&#8212;&#8201;by AAVV, 2014; 333pp.</p>
</li>
</ul>
</div>
</div>
</div>
<div class="sect2">
<h3 id="commercial-books"><a class="anchor" href="#commercial-books"></a>11.3. Commercial Books</h3>
<div class="sect3">
<h4 id="if-history-2"><a class="anchor" href="#if-history-2"></a>IF History</h4>
<div class="ulist">
<ul>
<li>
<p><a href="https://nickm.com/twisty/" target="_blank" rel="noopener">Twisty Little Passages</a>&#8201;&#8212;&#8201;by Nick Montfort, 2005; 328pp, paperback or hardback.</p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="inform-7-3"><a class="anchor" href="#inform-7-3"></a>Inform 7</h4>
<div class="ulist">
<ul>
<li>
<p><a href="https://inform7.textories.com/" target="_blank" rel="noopener">Creating Interactive Fiction with Inform 7</a>&#8201;&#8212;&#8201;by Aaron A. Reed, 2010; 448 pp, paperback + eBook.</p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="twine-2"><a class="anchor" href="#twine-2"></a>Twine</h4>
<div class="ulist">
<ul>
<li>
<p><a href="https://www.melissafordauthor.com/writing-interactive-fiction-with-twine/" target="_blank" rel="noopener">Writing Interactive Fiction with Twine</a>&#8201;&#8212;&#8201;by Melissa Ford, 2016; 432pp. Available in eBook or paperback.</p>
</li>
</ul>
</div>
</div>
</div>
<div class="sect2">
<h3 id="documentaries"><a class="anchor" href="#documentaries"></a>11.4. Documentaries</h3>
<div class="ulist">
<ul>
<li>
<p><a href="http://www.getlamp.com" target="_blank" rel="noopener">Get Lamp</a></p>
</li>
</ul>
</div>
</div>
<div class="sect2">
<h3 id="tutorials"><a class="anchor" href="#tutorials"></a>11.5. Tutorials</h3>
<div class="sect3">
<h4 id="if-authoring-guides"><a class="anchor" href="#if-authoring-guides"></a>IF Authoring Guides</h4>
<div class="ulist">
<ul>
<li>
<p><a href="https://ifarchive.org/if-archive/info/Craft.Of.Adventure.pdf" target="_blank" rel="noopener">The Craft of the Adventure</a> (2nd Ed)&#8201;&#8212;&#8201;by Graham Nelson, 1997; 37pp, PDF. Five Articles on the Design of Adventure Games.</p>
</li>
<li>
<p><a href="https://inform-fiction.org/manual/html/ch8.html" target="_blank" rel="noopener"><em>The Craft of the Adventure</em></a> (Ch.VIII of DM4)&#8201;&#8212;&#8201;by Graham Nelson, 2001. A chapter of <em>The Inform Designer&#8217;s Manual</em> dedicated to IF authoring guidelines.</p>
</li>
<li>
<p><a href="https://web.archive.org/web/20091027084109/http://geocities.com/aetus_kane/writing/cam.html" target="_blank" rel="noopener">Crimes Against Mimesis</a>&#8201;&#8212;&#8201;by Roger Giner-Sorolla, 1996. (<a href="http://www.reocities.com/aetus_kane/writing/cam.html" target="_blank" rel="noopener">ReoCities link</a>)</p>
</li>
</ul>
</div>
<div class="paragraph">
<p>Tutorials by inki (Dan Shiovitz):</p>
</div>
<div class="ulist">
<ul>
<li>
<p><a href="https://inky.org/if/notes.html" target="_blank" rel="noopener">General Game-Design/Authoring Notes</a></p>
</li>
<li>
<p><a href="https://inky.org/if/program-if.html" target="_blank" rel="noopener">How to Program IF</a></p>
</li>
<li>
<p><a href="https://inky.org/if/great-games.html" target="_blank" rel="noopener">How to Write a Great Game</a></p>
</li>
<li>
<p><a href="https://inky.org/if/think-player.html" target="_blank" rel="noopener">Think Like a Player!</a></p>
</li>
</ul>
</div>
<div class="paragraph">
<p>Tutorials by Emily Short:</p>
</div>
<div class="ulist">
<ul>
<li>
<p><a href="https://emshort.blog/how-to-play/writing-if/" target="_blank" rel="noopener">Writing IF</a></p>
</li>
<li>
<p><a href="https://emshort.home.mindspring.com/Geography.html" target="_blank" rel="noopener">Challenges of a Broad Geography</a> (2001)</p>
</li>
<li>
<p><a href="https://emshort.blog/2014/10/29/writing-in-collaboration-with-the-system/" target="_blank" rel="noopener">Writing in Collaboration with the System</a> (2014)</p>
</li>
<li>
<p><a href="https://emshort.blog/2016/04/12/beyond-branching-quality-based-and-salience-based-narrative-structures/" target="_blank" rel="noopener">Beyond Branching: Quality-Based, Salience-Based, and Waypoint Narrative Structures</a> (2016)</p>
</li>
<li>
<p><a href="https://emshort.blog/2015/05/24/framed-invisible-parties-and-the-world-plot-interface/" target="_blank" rel="noopener">Tightening the World-Plot Interface: or, Why I Am Obsessed With Conversation Models</a> (2015)</p>
</li>
<li>
<p><a href="https://emshort.blog/2009/08/23/idea-to-implementation/" target="_blank" rel="noopener">Idea to Implementation</a> (2009)</p>
</li>
<li>
<p><a href="http://www.brasslantern.org/writers/iftheory/setting.html" target="_blank" rel="noopener">Developing a Setting for Fantastical IF</a> (2001)</p>
</li>
<li>
<p><a href="https://emshort.blog/2008/05/04/plot-scene-by-scene/" target="_blank" rel="noopener">Plot, scene by scene</a> (2008)</p>
</li>
<li>
<p><a href="https://emshort.blog/2008/08/28/scaffolding-and-scene-based-design/" target="_blank" rel="noopener">Scaffolding and Scene-based Design</a> (2008)</p>
</li>
<li>
<p><a href="https://emshort.blog/2008/11/08/preparing-a-game-for-testing/" target="_blank" rel="noopener">Preparing a game for testing</a> (2008)</p>
</li>
</ul>
</div>
<div class="paragraph">
<p>Tutorials on Description:</p>
</div>
<div class="ulist">
<ul>
<li>
<p><a href="https://raddial.com/if/theory/territory.html" target="_blank" rel="noopener">Mapping the Tale: Scene Description in IF</a>&#8201;&#8212;&#8201;by J. Robinson Wheeler</p>
</li>
</ul>
</div>
<div class="paragraph">
<p>Scott Kim "Puzzle Master" articles and resources on puzzles and puzzles-creation:</p>
</div>
<div class="ulist">
<ul>
<li>
<p><a href="https://www.scottkim.com/" target="_blank" rel="noopener">Scott Kim website homepage</a></p>
</li>
<li>
<p><a href="http://www.scottkim.com.previewc40.carrierzone.com/thinkinggames/" target="_blank" rel="noopener">articles on game-design</a></p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="designing-if-authoring-systems"><a class="anchor" href="#designing-if-authoring-systems"></a>Designing IF Authoring Systems</h4>
<div class="ulist">
<ul>
<li>
<p><a href="http://www.wolldingwacht.de/if/if-auth-dev-guide.html" target="_blank" rel="noopener">The Interactive Fiction Authoring System Developer&#8217;s Guide</a>&#8201;&#8212;&#8201;by Peer Schaefer, 2005; 24pp, PDF. A document for programmers who want to create a development system for IF, covering the most important aspects that the developer should consider, and the most important pitfalls he should avoid.</p>
</li>
<li>
<p><a href="https://www.ifarchive.org/if-archive/magazines/XYZZYnews/XYZZY14.PDF" target="_blank" rel="noopener"><em>So you want to write a text adventuring authoring system…</em></a>&#8201;&#8212;&#8201;by Alan Conroy, in <strong>XYZZYnews</strong> issue #14, 1998. In this 6 pages article, Alan Conroy discusses how he developed an adventure authoring system named Adventure Builder and the issues involved with writing your own. (<a href="https://www.ifarchive.org/if-archive/magazines/XYZZYnews/XYZZY14.TXT" target="_blank" rel="noopener">TXT version</a>)</p>
</li>
<li>
<p><a href="http://www.ifwiki.org/index.php/Building_a_New_Interactive_Fiction_System" target="_blank" rel="noopener">IFWiki » Building a New Interactive Fiction System</a></p>
</li>
<li>
<p><a href="http://www.ifwiki.org/index.php/Past_raif_topics:_Development:_part_1" target="_blank" rel="noopener">IFWiki » Past raif topics » Development</a>:</p>
<div class="ulist">
<ul>
<li>
<p><a href="http://www.ifwiki.org/index.php/Past_raif_topics:_Development:_part_1#Creating_an_IF_language" target="_blank" rel="noopener">Creating an IF language</a></p>
</li>
<li>
<p><a href="http://www.ifwiki.org/index.php/Past_raif_topics:_Game_Mechanics:_part_1#Game_physics_.2F_world_model" target="_blank" rel="noopener">Game physics / world model</a></p>
</li>
</ul>
</div>
</li>
<li>
<p><a href="https://inform-fiction.org/manual/html/s24.html" target="_blank" rel="noopener">DM4 » §24 The world model described</a>&#8201;&#8212;&#8201;<em>The Inform Designer&#8217;s Manual</em> by Graham Nelson, 2001. Section 24 discusses world models.</p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="inform-7-4"><a class="anchor" href="#inform-7-4"></a>Inform 7</h4>
<div class="ulist">
<ul>
<li>
<p><a href="http://www.ifwiki.org/index.php/Inform_7_for_Programmers" target="_blank" rel="noopener">Inform 7 for Programmers</a>&#8201;&#8212;&#8201;by Ron Newcomb, 2009 (<code>i7_5U92</code>); multipart tutorial at IFWiki (HTML).</p>
</li>
<li>
<p><a href="http://www.plover.net/~pscion/Inform%207%20for%20Programmers.pdf" target="_blank" rel="noopener">Inform 7 Programmer&#8217;s Manual</a>&#8201;&#8212;&#8201;by Ron Newcomb, 2011 (<code>i7_6G60</code>); 81pp, PDF.</p>
</li>
<li>
<p><a href="https://www.sibylmoon.com/welcome-to-adventure/" target="_blank" rel="noopener">Welcome To Adventure: A Quick-Start Guide to Inform 7</a>&#8201;&#8212;&#8201;by Carolyn Vaneseltine, 2014; multipart tutorial (HTML).</p>
</li>
<li>
<p><a href="https://www.steveersinghaus.com/informsnippets/" target="_blank" rel="noopener">The Foyer is a Room</a>&#8201;&#8212;&#8201;Inform 7 Examples, Snippets and PDF handouts by John Timmons.</p>
</li>
<li>
<p><a href="https://emshort.blog/2009/06/24/exercises-in-generated-prose/" target="_blank" rel="noopener">Exercises in Generated Prose</a>&#8201;&#8212;&#8201;by Emily Short, 2009; blog entry.</p>
</li>
</ul>
</div>
</div>
</div>
<div class="sect2">
<h3 id="cheat-sheets-and-reference-docs"><a class="anchor" href="#cheat-sheets-and-reference-docs"></a>11.6. Cheat Sheets and Reference Docs</h3>
<div class="sect3">
<h4 id="inform-6-3"><a class="anchor" href="#inform-6-3"></a>Inform 6</h4>
<div class="ulist">
<ul>
<li>
<p><a href="http://www.firthworks.com/roger/downloads/informqr.zip" target="_blank" rel="noopener">Inform in four minutes</a>&#8201;&#8212;&#8201;by Roger Firth, 2002; 4pp, PDF. A quick reference to the Inform language.</p>
</li>
<li>
<p><a href="http://www.firthworks.com/roger/downloads/inflibqr.zip" target="_blank" rel="noopener">InfoLib at your fingertips</a>&#8201;&#8212;&#8201;by Roger Firth, 2002; 6pp, PDF. A quick reference to the Inform Library.</p>
</li>
</ul>
</div>
</div>
</div>
</div>
</div>
<div class="sect1">
<h2 id="if-for-teaching-and-education"><a class="anchor" href="#if-for-teaching-and-education"></a>12. IF for Teaching and Education</h2>
<div class="sectionbody">
<div class="paragraph">
<p>Interactive Fiction has been employed in the classroom as a teaching aid in various fields: reading, foreign languages, litterature, history, computer programming, game design, and new media theory.</p>
</div>
<div class="ulist">
<ul>
<li>
<p><a href="#online-resources">Online Resources</a></p>
</li>
<li>
<p><a href="#examples">Examples</a></p>
</li>
<li>
<p><a href="#books">Books</a></p>
</li>
<li>
<p><a href="#whitepapers-and-guides">Whitepapers and Guides</a></p>
</li>
<li>
<p><a href="#articles-and-academic-papers">Articles and Academic Papers</a></p>
</li>
</ul>
</div>
<div class="sect2">
<h3 id="online-resources"><a class="anchor" href="#online-resources"></a>12.1. Online Resources</h3>
<div class="ulist">
<ul>
<li>
<p><a href="https://medium.com/@model_train/the-text-adventure-literacy-project-2b9601099d39" target="_blank" rel="noopener">TALP (The Text Adventure Literacy Project)</a>&#8201;&#8212;&#8201;The TALP project aims to provide a friction-less method of teaching the next generation how to play text adventure games.</p>
</li>
<li>
<p><a href="http://inform7.com/teach/" target="_blank" rel="noopener">Teach with Inform</a>&#8201;&#8212;&#8201;Inform7&#8217;s website educational resources page.</p>
</li>
<li>
<p><a href="http://inform7.com/news/category/education/" target="_blank" rel="noopener">inform7.com/news/category/education^</a>&#8201;&#8212;&#8201;Inform7 News Section, «Education» category. RSS Feed subscription available.</p>
</li>
<li>
<p><a href="https://emshort.blog/how-to-play/teaching-if/" target="_blank" rel="noopener">Teaching IF</a>&#8201;&#8212;&#8201;a list of IF courses in schools, curated by Emily Short.</p>
</li>
<li>
<p><a href="https://gamingthepast.net/simulation-design/" target="_blank" rel="noopener">Gaming The Past » Interactive Texts</a>&#8201;&#8212;&#8201;A repository for theory, research , and implementations of simulation games for history education. Created and maintained by Jeremiah McCall. Offers Inform 7 and Twine resources.</p>
</li>
<li>
<p><a href="http://www.steveersinghaus.com/informsnippets/" target="_blank" rel="noopener">The Foyer is a Room</a>&#8201;&#8212;&#8201;Inform 7 Examples, Snippets and PDF handouts by John Timmons, created by educators for students and the classroom. Freely reusable material.</p>
</li>
</ul>
</div>
</div>
<div class="sect2">
<h3 id="examples"><a class="anchor" href="#examples"></a>12.2. Examples</h3>
<div class="ulist">
<ul>
<li>
<p><a href="http://public.gettysburg.edu/~cfee/courses/English4012001/topic3.htm" target="_blank" rel="noopener">Viking Studies Course Materials</a>&#8201;&#8212;&#8201;Includes various IF story files (30+). <a href="http://www.gettysburg.edu/" target="_blank" rel="noopener">Gettysburg College</a> (Gettysburg, PA).</p>
</li>
<li>
<p><a href="https://web.archive.org/web/20140815075654/http://cle.usu.edu/CLE_IF_VOSR.html" target="_blank" rel="noopener">Voices of Spoon River</a>&#8201;&#8212;&#8201;An instructional IF game based by Creative Learning Environments Lab (Utah State University), based on Edgar Lee Masters' <em>The Spoon River Anthology</em>. (see also, <a href="http://www.ifwiki.org/index.php/Voices_of_Spoon_River" target="_blank" rel="noopener">IF Wiki » Voices of Spoon River</a>)</p>
</li>
</ul>
</div>
</div>
<div class="sect2">
<h3 id="books"><a class="anchor" href="#books"></a>12.3. Books</h3>
<div class="ulist">
<ul>
<li>
<p><a href="https://www.routledge.com/Gaming-the-Past-Using-Video-Games-to-Teach-Secondary-History/McCall/p/book/9780415887601" target="_blank" rel="noopener">Gaming the Past: Using Video Games to Teach Secondary History</a>&#8201;&#8212;&#8201;by <a href="https://en.wikipedia.org/wiki/Jeremiah_McCall" target="_blank" rel="noopener">Jeremiah McCall</a>. New York: Routledge, 2011. Available in paperback, hardback and digital editions (<a href="https://www.amazon.com/Gaming-Past-Using-Secondary-History-ebook/dp/B007NYFQUA/ref=mt_kindle?_encoding=UTF8&amp;me=" target="_blank" rel="noopener">Kindle</a>).</p>
</li>
</ul>
</div>
</div>
<div class="sect2">
<h3 id="whitepapers-and-guides"><a class="anchor" href="#whitepapers-and-guides"></a>12.4. Whitepapers and Guides</h3>
<div class="ulist">
<ul>
<li>
<p><a href="https://gamingthepast.net/theory-practice/my-work/mccall-informpaper/" target="_blank" rel="noopener">Student-designed text-based simulation games for learning history: A practical approach to using Inform 7 in the history classroom</a>&#8201;&#8212;&#8201;by Jeremiah McCall (CC BY-NC-SA 3.0 US).</p>
</li>
</ul>
</div>
</div>
<div class="sect2">
<h3 id="articles-and-academic-papers"><a class="anchor" href="#articles-and-academic-papers"></a>12.5. Articles and Academic Papers</h3>
<div class="ulist">
<ul>
<li>
<p><a href="http://ldm.sagepub.com/content/3/4/519" target="_blank" rel="noopener">Interactive Fiction: &#8216;New Literacy&#8217; Learning Opportunities for Children</a>&#8201;&#8212;&#8201;by Deborah Kozdras, Denise Marie Haunstetter, and James R. King (2006), E-Learning, 3(4), pp. 519-533.</p>
</li>
<li>
<p><a href="http://inform7.com/teach/downloads/Goethe.pdf" target="_blank" rel="noopener">Goethe&#8217;s &#8220;Elective Affinities&#8221; as E-Learning: Developing Exercises for German Classes in the Secondary School Level 2</a>&#8201;&#8212;&#8201;by Wiebke Schwelgengraber, Mario Donick, and Franziska Schonfeld, presented at the E-Learning Baltics 2009 Conference.</p>
</li>
<li>
<p><a href="http://www.aaai.org/Papers/AIIDE/2006/AIIDE06-037.pdf" target="_blank" rel="noopener">Mixing Story and Simulation in Interactive Narrative</a>&#8201;&#8212;&#8201;Mark O. Riedl, Andrew Stern, Don Dini.</p>
</li>
</ul>
</div>
</div>
</div>
</div>
<div class="sect1">
<h2 id="social-events"><a class="anchor" href="#social-events"></a>13. Social Events</h2>
<div class="sectionbody">
<div class="sect2">
<h3 id="conferences"><a class="anchor" href="#conferences"></a>13.1. Conferences</h3>

</div>
<div class="sect2">
<h3 id="meetups"><a class="anchor" href="#meetups"></a>13.2. Meetups</h3>
<div class="ulist">
<ul>
<li>
<p><a href="http://themade.org/events" target="_blank" rel="noopener">Museum of Art and Digital Entertainment&#8217;s Monthly Interactive Fiction Meetup</a></p>
</li>
</ul>
</div>
</div>
</div>
</div>
<div class="sect1">
<h2 id="digital-communities"><a class="anchor" href="#digital-communities"></a>14. Digital Communities</h2>
<div class="sectionbody">
<div class="sect2">
<h3 id="forums"><a class="anchor" href="#forums"></a>14.1. Forums</h3>
<div class="ulist">
<ul>
<li>
<p><a href="https://intfiction.org/" target="_blank" rel="noopener">Interactive Fiction Community Forum</a>&#8201;&#8212;&#8201;hosted by the <a href="https://iftechfoundation.org/" title="Interactive Fiction Technology Foundation (IFTF)" target="_blank" rel="noopener">IFTF</a>.</p>
</li>
</ul>
</div>
</div>
<div class="sect2">
<h3 id="newsgroups-and-mailing-lists"><a class="anchor" href="#newsgroups-and-mailing-lists"></a>14.2. Newsgroups and Mailing Lists</h3>
<div class="sect3">
<h4 id="english"><a class="anchor" href="#english"></a>English</h4>
<div class="ulist">
<ul>
<li>
<p><a href="https://groups.google.com/forum/#!forum/rec.arts.int-fiction" target="_blank" rel="noopener">rec.arts.int-fiction</a> (Google Groups)&#8201;&#8212;&#8201;Discussions about interactive fiction.</p>
</li>
<li>
<p><a href="https://groups.google.com/forum/#!forum/rec.games.int-fiction" target="_blank" rel="noopener">rec.games.int-fiction</a> (Google Groups)&#8201;&#8212;&#8201;All aspects of interactive fiction games.</p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="italian"><a class="anchor" href="#italian"></a>Italian</h4>
<div class="ulist">
<ul>
<li>
<p><a href="https://groups.google.com/forum/#!forum/it.comp.giochi.avventure.testuali" target="_blank" rel="noopener">it.comp.giochi.avventure.testuali</a> (Google Groups)</p>
</li>
</ul>
</div>
</div>
</div>
<div class="sect2">
<h3 id="muds"><a class="anchor" href="#muds"></a>14.3. MUDs</h3>
<div class="sect3">
<h4 id="ifmud"><a class="anchor" href="#ifmud"></a>ifMUD</h4>
<div class="ulist">
<ul>
<li>
<p><a href="http://ifmud.port4000.com/" target="_blank" rel="noopener">ifmud.port4000.com</a></p>
</li>
<li>
<p><a href="http://ifmud.port4000.com:4002/bui" target="_blank" rel="noopener">ifmud.port4000.com:4002/bui</a> (web client)</p>
</li>
</ul>
</div>
<div class="paragraph">
<p>Since 1997 the <strong>ifMUD</strong> (<em>a MUD forever voyaging</em>) has been a gathering point for the IF community.</p>
</div>
<div class="paragraph">
<p>For more information, see also:</p>
</div>
<div class="ulist">
<ul>
<li>
<p><a href="http://www.ifwiki.org/index.php/IfMUD" target="_blank" rel="noopener">IFWiki » ifMUD</a></p>
</li>
<li>
<p><a href="https://en.wikipedia.org/wiki/IfMUD" target="_blank" rel="noopener">Wikipedia » ifMUD</a></p>
</li>
</ul>
</div>
</div>
</div>
</div>
</div>
</div>
<div id="footer">
<div id="footer-text">
</div>
</div>
</body>
</html>